我正在处理一个带有累积金额的简单帐户报告。我让 sql 在 phpmyadmin 中工作。设置@csum := 0; 更新accountsetup set BAL = (@csum := @csum + DR) WHERE Accounttype = 'EXPENSES' AND date ='2019-07-19' order by id;
当我把这个 SQL 放在 PHP 中时
我得到错误
// 我删除了连接部分
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// This is the where i am having issues ! ! !
$sql = "
set @csum := 0
update accountssetup
set BAL = (@csum := @csum + DR)
order by id;";
if ($conn->query($sql) === TRUE) {
echo "Record updated successfully";
} else {
echo "Error updating record: " . $conn->error; //$error ='1';
}
$conn->close();
我希望通过使用累积总和更新 BAL 来使累积总和起作用,但我收到此错误
错误更新记录:您的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册,以在第 2 行的“update accountssetup set BAL = (@csum := @csum + DR) order by id”附近使用正确的语法
这工作得很好,谢谢
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "appportal";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql1 = "set @csum := 0";
$sql2 = "update accountssetup\n"
. "set BAL = (@csum := @csum + DR)\n"
. "order by id";
if ($conn->query($sql1)&& $conn->query($sql2) === TRUE)
{
echo "Record updated successfully";
} else {
echo "Error updating record: " . $conn->error;
//$error='1';
}
$conn->close();
?>
我实际上通过设置两个变量来使用多查询。$sql1 和 $sql2 。这允许两个 Sql 同时运行。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句