PDO 查询更新不在查询第 2 部分中的日期时间列
PDO query updating a datetime column not in query Part 2
这个问题的继续:
我的 table 中名为 lastLoginDate 的列正在自动更新,即使我准备好的语句不包含该列。
显然,当我创建新列时,设置了一个触发器。
在使用命令 SHOW CREATE TABLE table_name 后,我返回了以下结果:
CREATE TABLE `users_edi` (
`username` varchar(30) NOT NULL DEFAULT '',
`fullname` varchar(50) DEFAULT NULL,
`userlevel` tinyint(1) unsigned NOT NULL,
`ipaddress` varchar(30) DEFAULT NULL,
`email` varchar(150) DEFAULT NULL,
`entrydate` datetime DEFAULT NULL,
`division` varchar(35) DEFAULT NULL,
`password` varchar(32) DEFAULT NULL,
`userid` varchar(32) DEFAULT NULL,
`timestamp` int(11) unsigned NOT NULL,
`job_title` varchar(30) DEFAULT NULL,
`dept` varchar(50) DEFAULT NULL,
`phone` varchar(11) DEFAULT NULL,
`lastLoginDate` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP, // <-- here
PRIMARY KEY (`username`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
table 岁。我刚刚创建了该列,并且以某种方式为其设置了触发器(我猜)。
无论如何,我尝试使用以下命令将其删除:
ALTER TABLE `users_edi`
`lastLoginDate` datetime DEFAULT NULL
但我只收到以下错误:
[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '`lastLoginDate` datetime DEFAULT NULL' at line 4
如何使用 ALTER TABLE 命令或任何其他命令删除此触发器?
ALTER TABLE users_edi MODIFY COLUMN lastLoginDate DATETIME DEFAULT NULL;
您可能想在 ALTER TABLE 上阅读此页面:https://dev.mysql.com/doc/refman/8.0/en/alter-table.html
这个问题的继续:
我的 table 中名为 lastLoginDate 的列正在自动更新,即使我准备好的语句不包含该列。
显然,当我创建新列时,设置了一个触发器。
在使用命令 SHOW CREATE TABLE table_name 后,我返回了以下结果:
CREATE TABLE `users_edi` (
`username` varchar(30) NOT NULL DEFAULT '',
`fullname` varchar(50) DEFAULT NULL,
`userlevel` tinyint(1) unsigned NOT NULL,
`ipaddress` varchar(30) DEFAULT NULL,
`email` varchar(150) DEFAULT NULL,
`entrydate` datetime DEFAULT NULL,
`division` varchar(35) DEFAULT NULL,
`password` varchar(32) DEFAULT NULL,
`userid` varchar(32) DEFAULT NULL,
`timestamp` int(11) unsigned NOT NULL,
`job_title` varchar(30) DEFAULT NULL,
`dept` varchar(50) DEFAULT NULL,
`phone` varchar(11) DEFAULT NULL,
`lastLoginDate` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP, // <-- here
PRIMARY KEY (`username`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
table 岁。我刚刚创建了该列,并且以某种方式为其设置了触发器(我猜)。
无论如何,我尝试使用以下命令将其删除:
ALTER TABLE `users_edi`
`lastLoginDate` datetime DEFAULT NULL
但我只收到以下错误:
[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '`lastLoginDate` datetime DEFAULT NULL' at line 4
如何使用 ALTER TABLE 命令或任何其他命令删除此触发器?
ALTER TABLE users_edi MODIFY COLUMN lastLoginDate DATETIME DEFAULT NULL;
您可能想在 ALTER TABLE 上阅读此页面:https://dev.mysql.com/doc/refman/8.0/en/alter-table.html