当我尝试使用 PHP 更新 SQL Server 中的数据时出现错误。这是PHP代码:$sql = "UPDATE Warehouse SET Items = CAST( ? AS varbinary(1920)) WHERE AccountID = 'shono'";$params = array($vip_cat);$stmt = sqlsrv_query( $conn_ms, $sql, $params);if( $stmt === false ) { die( print_r( sqlsrv_errors(), true));}else{ echo 'ok';}这是我的错误:无效值的一个示例是标度大于精度的数字类型数据。) )我尝试了什么:$sql = "UPDATE Warehouse SET Items = CAST( (?) AS varbinary(1920)) WHERE AccountID = 'shono'";和:$sql = "UPDATE Warehouse SET Items = CAST( $vip_cat AS varbinary(1920)),WarNum = (?) WHERE AccountID = 'shono'";$params = array(1);
1 回答
侃侃尔雅
TA贡献1801条经验 获得超16个赞
这是问题所在
$sql = "UPDATE Warehouse SET Items = CAST( **?** AS varbinary(1920)) WHERE AccountID = 'shono'";
**$params = array($vip_cat);**
$stmt = sqlsrv_query( $conn_ms, $sql, **$params**);
我们只需要从 $stmt = sqlsrv_query( $conn_ms, $sql, $params );中删除 $params 我们会得到这样的正确代码
$stmt = sqlsrv_query( $conn_ms, $sql);
此外,这里将是 SQL 的正确命令
UPDATE Warehouse SET Items = CAST(
0x00..
AS varbinary(1920)) WHERE AccountID = 'shono'
- 1 回答
- 0 关注
- 92 浏览
添加回答
举报
0/150
提交
取消