1
我试图在第三方应用程序中更新数据库。这里是受影响的两个表的架构:错误1442:无法更新存储的函数/触发器中的表
Table 'camera'
columns: deviceID, connectionState
Table 'cameraRecording'
columns: deviceID, recordToVolumeID
我试过这两个查询,但收到相同的错误。
mysql> update cameraRecording
SET recordToVolumeID='STRING'
WHERE deviceID
IN (select deviceID from camera WHERE connectionState=1);
ERROR 1442 (HY000): Can't update table 'camera' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
。
mysql> update cameraRecording a
JOIN camera b
ON a.deviceID=b.deviceID AND b.connectionState=1
SET recordToVolumeID='STRING';
ERROR 1442 (HY000): Can't update table 'camera' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
我不是SQL专家,不经常使用它,但我敢肯定,这应该工作。我猜应用程序已经设置了触发器或函数......有没有办法执行这个任务?我读过其他人的其他帖子,其中大部分都涉及到他们试图创建触发器。
http://stackoverflow.com/questions/1582683/mysql-trigger-stored-trigger-is-already-used-by-statement-which-invoked-stored-t?rq=1 – Mihai