我想知道在codeigniter中编写数据库(mysql)查询的最佳实践是什么。我见过许多不同的方法,但很困惑什么是最佳做法。
以下是我经历过的几种方法
方法一
$this -> db -> select('id, username, password');
$this -> db -> from('users');
$this -> db -> where('username = ' . "'" . $username . "'");
$this -> db -> where('password = ' . "'" . MD5($password) . "'");
$this -> db -> limit(1);
方法二
$query = $this->db->query("select * from user where username = '$uname' and password = '$pass'");
方法三(写存储过程)
$query = "call authenticateuser(" . $this->db->escape($parameters['username']) . ", '" . sha1($parameters['password']) . "')";
可能有许多其他方法,但想知道编写查询的最佳方法是什么,因此,如果有人可以提出建议,那将非常有帮助。