0

我在 mysql 中编写了一个查询,它在 phpmyadmin 中运行,但是在 PHP 中它给了我错误

您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在“选择 docno、docdate、doctype、narration、drcr 附近使用正确的语法”(第 2 行的 drcr = 'Dr' then amo' 的情况)

我的查询在 PHP 中是:

$sql = "set @runtot := 0; select docno, docdate, doctype, narration, drcr, (case when drcr = 'Dr'
then amount else 0 end) as debit, (case when drcr = 'Cr' then amount else 0 end) as 
credit, concat(abs((@runtot := @runtot + (case when drcr = 'Dr' then amount else amount*-1  
end))), (case when @runtot < 0 then ' Cr' else ' Dr' end) ) as balance from (select docno,  
docdate, doctype, narration, amount, drcr from ledger where accode = 1 )as q1";

php有什么问题?

4

1 回答 1

1

您必须使用事务在 MySQL 中执行多个命令。您首先创建一个变量,然后执行另一个命令。

仅使用单个功能mysqli_query,您只能执行一个命令,命令由 . 分隔;

当您将代码粘贴到 PHPMyAdmin 中时,它仍然可以工作,因为它仍然应该是一个事务。

您可以阅读有关交易的更多信息。

于 2013-06-22T08:57:10.890 回答