我在 MySQL 中遇到了一个奇怪的问题,我尝试更新一个存在的表中的值,但得到一个错误,指出该表不存在,即使它存在。 SELECT 语句工作正常:
mysql> SELECT * FROM CurrentState;
+----+------------+--------+--------+
| ID | last_price | buyer | seller |
+----+------------+--------+--------+
| 1 | 5.10 | 5.09 | 5.12 |
| 2 | 132.00 | 130.30 | 132.40 |
+----+------------+--------+--------+
2 rows in set (0.00 sec)
mysql> UPDATE CurrentState SET buyer = buyer;
ERROR 1109 (42S02): Unknown table 'CurrentState' in field list
我尝试以普通用户和 root 身份执行查询,我得到了相同的结果。问题是什么?我所做的唯一一件事就是为表创建了一个触发器,以防执行更新语句。但现在这甚至是不可能的。
感谢您的帮助!
编辑:添加触发器
CREATE TRIGGER push_changes AFTER UPDATE ON CurrentState FOR EACH ROW CALL winners_change(CurrentState.buyer,CurrentState.seller,CurrentState.last_price);
在我写这篇文章时,我猜问题出在 (CurrentState.buyer,CurrentState.seller,CurrentState.last_price);
部分,是否应该删除 CurrentState
?
最佳答案
您应该使用 NEW
而不是 CurrentState
来引用当前行。
关于mysql - 无法更新表格,但选择作品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23041384/