繁体   English   中英

将PHP变量绑定到ODBC SQL UPDATE语句

[英]Binding PHP variables to ODBC SQL UPDATE statement

我正在尝试在PHP中使用ODBC将参数绑定到UPDATE语句,但是SQL语句失败了,我一生都无法找出原因。 我尝试了Googling,但是关于将PHP与ODBC结合使用的信息似乎很少,而与MySQLi和PDO之类的信息相反。

我在参数绑定中发现的大多数示例都使用SELECT语句,但据我所知,这没有什么区别。 我找到的最接近答案是在stackoverflow上 据我所见,他们正在做我正在做的事情,但我不断遇到错误。 这是我的代码:

$updQuery = "UPDATE Demographic SET dmg_FirstName=? WHERE dmg_ID=?";
$update = odbc_prepare($connect, $updQuery);

$fname = $_POST['firstname'];
$pID = 145100007;
$updResult = odbc_execute($update, array($fname, $pID)) or die (odbc_errormsg());

这是我不断遇到上面的代码的错误:

Warning: odbc_execute(): SQL error: [Microsoft][ODBC Driver Manager] SQL data type out of range, SQL state S1004 in SQLBindParameter in C:\xampp\htdocs\work\ajaxdd.php on line 44

当我删除参数绑定时,代码会起作用,因此,如果最糟糕的情况变得最糟,我可以尝试尽最大可能清除数据,但这显然不是可取的。

这可能意味着您要插入的ID大于该整数列允许的ID。 尝试先验证是否是这种情况。 dmg_ID的类型是dmg_ID 145100007是一个相当高的数字,因此我怀疑这可能是罪魁祸首。

暂无
暂无

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

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