不使用`where`子句,但得到错误:“where子句中的未知列<col_name>”

时间:2018-03-02 07:21:21

标签: mysql insert where-clause

我已经用相同的标题搜索了许多SO答案。请在将其标记为重复之前帮助我。

我在MySQL查询中收到一个奇怪的错误。

以下是表格的说明。

desc snap of table

我正在尝试使用以下查询在表中插入值

INSERT INTO `UL`.`B_FHCL_IOT_MACHINEDATA`(`STATUS`, `MACHINE_ID`, `PRODUCT_ID`, `MACHINE_ITEM_COUNT`, `OPENING_READING`, `CLOSING_READING`, `CONSUMPTION`,
                    `TRANSACTION_DATE`, `CUR_DATE`, `TRANSACTION_TIME`, `CUR_TIME`, `MACHINE_DAYCOUNTER`, `SOURCE`)
                    VALUES('active','9','5',230,'211','230','19','2018-03-02','2018-03-02','09:20','09:20',568,'auto');

但是收到错误消息

12:18:43    INSERT INTO `UL`.`B_FHCL_IOT_MACHINEDATA`(`STATUS`, `MACHINE_ID`, `PRODUCT_ID`, `MACHINE_ITEM_COUNT`, `OPENING_READING`, `CLOSING_READING`, `CONSUMPTION`,      `TRANSACTION_DATE`, `CUR_DATE`, `TRANSACTION_TIME`, `CUR_TIME`, `MACHINE_DAYCOUNTER`, `SOURCE`)      VALUES('active','9','5',230,'211','230','19','2018-03-02','2018-03-02','09:20','09:20',568,'auto') Error Code: 1054. Unknown column 'MACHINE_ID' in 'where clause' 0.234 sec

上述where声明中没有insert条款

我也试过没有反叛。

无法理解为什么错误仅发生在第二列MACHINE_ID上。

表中指定了语句中指定的所有列。

请别人帮助我,我在这里犯了什么错误。

1 个答案:

答案 0 :(得分:0)

在这里,我有点粗心。如果像我这样的人,真的会遇到这种奇怪的问题。

请不要在这里恐慌。

正如萨尔蒙猜测的那样。触发器在表上运行after insert。 基本上,这个触发器引发了错误。

当我放下触发器时,查询工作正常。