我相信我的问题可以被称为another question几乎相同的标题,但答案不幸的是我不够清楚,这个问题也是6岁,也许已经有一些改变MySQL 。MySQL错误1443解决方法
我想从表中删除一行,甚至没有更新/插入/删除视图表中的行,据我所知,不幸的是,我们不允许我们更改引用视图的表表。 我需要引用其使我进入选项2,我的问题表:“列表转储到一个临时表和使用,为您的子查询”
我怎样才能或是否有解决方法使此代码工作?
我使用的MySQL版本5.6.12和 代码我工作:
DELETE FROM student
WHERE (SUBSTR(student.stud_no,1,4) = 1234)
AND NOT EXISTS
(SELECT vr.stud_no FROM viewroom vr WHERE
vr.stud_no = student.stud_no)
AND NOT EXISTS
(SELECT vlnr.stud_no,vlnr.status FROM viewlateststudentnr
vlnr WHERE (student.stud_no = vlnr.stud_no) AND (vlnr.status = 'confirmed'))
和错误:
1443 - 表 'VR' 的定义防止操作删除表'学生'。
“删除表中的行(或多个),甚至没有更新/插入/从视图表删除行”的观点不表,你不能保持一个记录在一个视图,同时消除它从基础表。 – Uueerdo
@Uueerdo我想要更改的行不被我引用的viewtables使用。例如我只想移除不在视图中的学生。所以我的查询不会直接或间接地改变视图表。 – wsssixteen