简体   繁体   English

Codeigniter查询到MSSQL查询

[英]Codeigniter query to mssql query

How do i convert this line of code into a query which will be accepted by MSSQL Server 2012? 如何将这一行代码转换为MSSQL Server 2012可接受的查询?

Im getting this error Call to a member function num_rows() on boolean in C:\\xampp\\htdocs\\pis\\application\\models\\main.php That happens when im trying to convert it into a query for mssql 我收到此错误我在C:\\ xampp \\ htdocs \\ pis \\ application \\ models \\ main.php中的布尔值上调用成员函数num_rows()时,我试图将其转换为mssql查询时会发生这种情况

      function login($username, $password) {



        $this -> db -> select();
        $this -> db -> from('tbl_user');
        $this -> db -> JOIN('tbl_assign_role', 'tbl_user.u_id = tbl_assign_role.tar_owner_id');
        $this -> db -> where('tbl_user.u_uname = ' . "'" . htmlspecialchars($username) . "'"); 
        $this -> db -> where('tbl_user.u_pword = ' . "'" . MD5($password) . "'"); 
        $this -> db -> where('tbl_user.is_active = 1'); 
        $this -> db -> limit(1);
        $query = $this -> db -> get();

        if($query -> num_rows() == 1)
        {
            return $query->result();
        }
        else
        {
            return false;
        }

    }

I change it into this 我换成这个

$query = "SELECT * FROM tbl_user
                  LEFT JOIN tbl_assign_role ON tbl_user.u_id = tbl_assign_role.tar_owner_id
                  WHERE tbl_user.u_name = '".$username."'
                  AND tbl_user.u_pword = '".MD5($password)."'
                  AND tbl_user.is_active = 1
                  FETCH NEXT 1 ROWS ONLY
                  ";

After i changed, that became the error. 我更改之后,就变成了错误。

It's working now. 现在正在工作。 What I've done is 我所做的是

$query = "SELECT TOP 1 * FROM tbl_user 
        JOIN tbl_assign_role ON tbl_user.u_id = tbl_assign_role.tar_owner_id 
        WHERE tbl_user.u_uname = '".htmlspecialchars($username)."' 
        AND tbl_user.u_pword = '".MD5($password)."' 
        AND tbl_user.is_active = 1";

        $query = $this->db->query($query);

您好希望这对您有帮助...

"SELECT tbl_user.*,tbl_assign_role.* FROM tbl_user left join tbl_assign_role on tbl_assign_role.tar_owner_id = tbl_user.u_id where tbl_user.u_uname = '".htmlspecialchars($username)."' and tbl_user.u_pword ='".MD5($password)."' and tbl_user.is_active='1' limit 1";

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM