WHERE子句中的语法错误256

时间:2012-11-16 04:40:48

标签: mysql

我正在尝试更新表格中的字段,并且我一直收到此语法错误。

global $conn, $strTableName;
db_exec("UPDATE equipment SET EContractNum = " . $_SESSION[$strTableName."_masterkey1"] . " WHERE EContractNum = " . $values['EContractNum'], $conn);

这是错误:

  

错误类型:256错误说明:您的SQL中有错误   句法;查看与您的MYSQL服务器版本对应的手册   正确的语法在'WHERE econtractnum = 35867111'附近使用   1

我已经查看了几个类似于我的搜索但我无法弄清楚我做错了什么。我对此很新,所以它可能很简单。我似乎无法使它成功。谢谢你的帮助。

1 个答案:

答案 0 :(得分:2)

$_SESSION[$strTableName."_masterkey1"]可能为空,或者是需要引用的字符串。

另外,不要将变量的原始值放入这样的查询中。使用框架或准备好的声明。它对安全性有好处,它也可以防止出现这种错误(好吧,它至少会把它变成一种不同的错误)。

相关问题