MySQL 5.6中的UPDATE命令中出现错误1054
每次尝试更新表时,我都会遇到1054错误。下面是命令行客户端中的转录:MySQL 5.6中的UPDATE命令中出现错误1054,mysql,mysql-error-1054,Mysql,Mysql Error 1054,每次尝试更新表时,我都会遇到1054错误。下面是命令行客户端中的转录: mysql>UPDATE Produtos SET prdNome = 'TESTE' WHERE prdCodigo=3; ERROR 1054 (42S22): Unknown column 'prdCodigo' in 'where clause' 当where子句中使用的值存在于表中时,会发生此错误。 如果输入一个不存在的值,则不会出现如下错误: mysql>UPDATE Produtos
mysql>UPDATE Produtos SET prdNome = 'TESTE' WHERE prdCodigo=3;
ERROR 1054 (42S22): Unknown column 'prdCodigo' in 'where clause'
当where子句中使用的值存在于表中时,会发生此错误。
如果输入一个不存在的值,则不会出现如下错误:
mysql>UPDATE Produtos SET prdNome = 'TESTE' WHERE prdCodigo=0;
Query OK, 0 rows affected (0.00 sec)
Rows matched: 0 Changed: 0 Warnings: 0
我做错了什么
表是按如下方式创建的,没有触发器
CREATE TABLE `produtos` (
`prdCodigo` int(11) NOT NULL AUTO_INCREMENT,
`prdNome` varchar(255) DEFAULT NULL,
`prdCompra` float DEFAULT NULL,
`prdVenda` float DEFAULT NULL,
`prdEstoque` int(11) DEFAULT NULL,
PRIMARY KEY (`prdCodigo`) USING BTREE,
KEY `IX_NomeProdutos` (`prdNome`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;
你的代码很好。确保表中存在prdCodigo列。还要检查拼写 你试过了吗?你也犯过同样的错误吗?就这么做了。完全没有错误。是否可以包括“SHOW CREATE TABLE Produtos”的结果以及此表上可能存在的任何触发器的详细信息?实际上,有一个触发器导致了问题。谢谢@HorusKol!