Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在MySQL表中运行更新而不返回超出范围值的PHP代码_Php_Mysql - Fatal编程技术网

在MySQL表中运行更新而不返回超出范围值的PHP代码

在MySQL表中运行更新而不返回超出范围值的PHP代码,php,mysql,Php,Mysql,我有点问题。我使用自动化的Dreamweaver编程功能,构建了一个表单,动态更新MySQL表中的“volume”列。这个“体积”列包含我必须从中减去的值。我已经能够用一个简单的 UPDATE offers SET volume=volume-%s 它的工作原理是返回: BIGINT无符号值超出了“(otcbb提供的卷-2000)”的范围 我对此感到非常高兴 问题是,当我将此脚本上载到宿主服务器时,它的行为方式不同。当我在线运行查询时,它不会抛出任何错误,并使用新值更新表列:42949672

我有点问题。我使用自动化的Dreamweaver编程功能,构建了一个表单,动态更新MySQL表中的“volume”列。这个“体积”列包含我必须从中减去的值。我已经能够用一个简单的

UPDATE offers SET volume=volume-%s 
它的工作原理是返回:

BIGINT无符号值超出了“(
otcbb
提供的
-2000)”的范围

我对此感到非常高兴

问题是,当我将此脚本上载到宿主服务器时,它的行为方式不同。当我在线运行查询时,它不会抛出任何错误,并使用新值更新表列:4294967295

如何在网上获得相同的结果

在本地,我运行的是MySql版本5.0.8-dev和MySql版本5.0.45

如能及时答复,我将不胜感激


谢谢

我猜你开始时的音量是0。4294967295是2^32-1,因此您可能在某个地方有下溢。

两台服务器上的表结构是否相同?请把它们贴出来。
未签名的
-此字段中只能有零值或正值field@tombom两种环境中的表值相同。是无符号只能是零值或正值。我认为MySQL处理整数和字符串的方式有很大的局限性。我能够通过使用javascript函数来控制用户的输入来解决这个问题。当然,Jvascript在服务器上处理之前会触发错误,并且输入字段中始终会输入正确的值。不过,谢谢你的建议,它们的信息量很大。