我只是想设置一些值="0",但它会自动转换为NULL.
$result_checkups = mysql_query("INSERT INTO TABLE1 (COL1, COL2) VALUES (".(!empty($COL1) ? "'$COL1'" : "NULL").", ".(!empty($COL2) ? "'$COL2'" : "NULL").") or die(mysql_error());
Run Code Online (Sandbox Code Playgroud)
这是我的代码 - 它看起来很奇怪,因为我需要设置NULL,当有人试图设置空字符串("").但现在,当时COL2="0",它NULL落后于MySQL(要清除,何时COL2="1",它是落后于MySQL的"1").哪里有问题?
MySQL表:
CREATE TABLE `TABLE1` (
`COL1` TIMESTAMP NULL DEFAULT NOW(),
`COL2` TINYINT(1) NULL);
Run Code Online (Sandbox Code Playgroud)
因为
php -r 'echo empty(0);'
1
php -r 'echo empty("0");'
1
Run Code Online (Sandbox Code Playgroud)
0是空的.尝试将您的陈述更改为:
$result_checkups = mysql_query("INSERT INTO TABLE1 (COL1, COL2) VALUES (".(($COL1==='') ? "NULL" : "'$COL1'").", ".(($COL2==='') ? "NULL" : "'$COL2'").")") or die(mysql_error());
Run Code Online (Sandbox Code Playgroud)