Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/71.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
SQL UPDATE更新的列数超过MySQL查询中设置的列数_Mysql_Sql - Fatal编程技术网

SQL UPDATE更新的列数超过MySQL查询中设置的列数

SQL UPDATE更新的列数超过MySQL查询中设置的列数,mysql,sql,Mysql,Sql,我有一个名为notifier的表,有11列: CREATE TABLE `notifier` ( `NUM_UTILISATEUR` int(32) UNSIGNED NOT NULL, `NUM_NOTIFICATION` int(32) UNSIGNED NOT NULL, `LU` tinyint(1) NOT NULL, `DATE_NOTIFIER` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP

我有一个名为notifier的表,有11列:

CREATE TABLE `notifier` (    
  `NUM_UTILISATEUR` int(32) UNSIGNED NOT NULL,    
  `NUM_NOTIFICATION` int(32) UNSIGNED NOT NULL,    
  `LU` tinyint(1) NOT NULL,    
  `DATE_NOTIFIER` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,    
  `NUM_PENSEE` int(32) NOT NULL,    
  `NUM_CONTRIBUTION` int(32) NOT NULL,    
  `NUM_COMMENTAIRE` int(32) UNSIGNED NOT NULL,    
  `CODE_NOTIF` int(11) NOT NULL,    
  `VU` tinyint(1) NOT NULL,    
  `DATE_VU` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',    
  `DATE_LU` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00'    
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
我只想更新两列:VU和DATE_LU。为此,我运行了以下mysql查询:

UPDATE notifier 
SET VU=1, DATE_LU = date('Y-m-d H:i:s') 
WHERE NUM_UTILISATEUR=130 
AND NUM_PENSEE = 113 
AND CODE_NOTIF=2 
AND NUM_CONTRIBUTION=439 
AND NUM_COMMENTAIRE=600" 
但它更新了3列:VU,DATE_VU和DATE_LU,而不是我想要的2列(VU,DATE_LU)!我甚至用NOW()替换date('Y-m-dh:I:s'),但问题仍然存在


知道发生了什么吗

你的数据库里有触发器吗?没有。更新当前时间戳时,我的dbmaybe
中没有触发器?没有。当我删除当前时间戳时,我的问题仍然存在。您是否直接从phpmyadmin运行此查询?因为乍一看,如果您已经显示了所有内容,如果在更新当前时间戳时没有触发器和
,那么问题只会出现在应用程序代码中,而不是数据库中。您的数据库中是否有触发器?根本没有。更新当前时间戳时,我的dbmaybe
中没有触发器?没有。当我删除当前时间戳时,我的问题仍然存在。您是否直接从phpmyadmin运行此查询?因为乍一看,如果您已经显示了所有内容,并且在更新当前时间戳时没有触发器和
,那么问题只会出现在应用程序代码中,而不会出现在数据库中