我有两个脚本,一个用于Insert,另一个用于Update。
我的更新按钮脚本正在使用最新插入的ID,并继续执行以下操作:
Update tblsurvey
set WouldLikeToBeSeenOnSite = 'sadffas'
and DislikedOnSite = 'asdfsadfsadf'
and OtherNewsWebsitesRead = 'asdfsadfa'
and LikedOnOtherNewsSites = 'asdfsadfas'
and IPAddress = '172.16.0.123'
and DateAnswered = current_date()
where SurveyResponseId in (select max(SurveyResponseId) from tblsurvey);
显然,“where”子句会产生错误:
1093 - you cant specify target table 'tblsurvey' for update in FROM clause.
有没有其他方法可以使用我正在更新的同一个表的最新插入ID?
感谢。
答案 0 :(得分:3)
答案 1 :(得分:1)
您不能对子查询FROM子句和更新目标使用相同表(在本例中为表tblsurvey)。
对UPDATE
和DELETE
操作使用相同的表进行更新/删除和子查询是非法的。