簡體   English   中英

CodeIgniter中的正確SQL查詢給出了錯誤

[英]Correct sql query in CodeIgniter is giving an error

當我從CodeIgniter運行查詢時,出現此錯誤。

    A Database Error Occurred
    Error Number: 42000/263
    [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Must specify 
    table to select from.
    SELECT *
    Filename: D:/xampp/htdocs/4hifi/system/database/DB_driver.php

這令人困惑,因為直接在SQL Server中執行的完全相同的查詢給出了正確的結果。

我正在使用CodeIgniter 3.1.9,我已經嘗試注入$ username變量以不同的方式進行查詢,所有操作都給出相同的錯誤。

這是代碼:

$sql = "select date, g1.product_name, g2.order_amount, g1.price, g1.id, g1.order_id, g1.action from dbo.orders g1 inner join (select product_name, SUM( order_amount) as order_amount from dbo.orders where action=1 and confirmed!=1 group by product_name) g2 on g2.product_name = g1.product_name where g1.confirmed !=1 and g1.kontrahent = ? and action = 1";

        $db2->query($sql, $username);


        $result = $db2->get()->result_array();

        return $result;

$db2->query($sql, $username); 行本身應該返回所需的結果。如果是原始查詢,則無需執行db->get()

為什么要分兩個步驟進行 你應該用這樣的東西

$sql = "select date, g1.product_name, g2.order_amount, g1.price, g1.id, g1.order_id, g1.action from dbo.orders g1 inner join (select product_name, SUM( order_amount) as order_amount from dbo.orders where action=1 and confirmed!=1 group by product_name) g2 on g2.product_name = g1.product_name where g1.confirmed !=1 and g1.kontrahent = ? and action = 1";

    $result = $sql->result_array();

    return $result;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM