我相信我的問題可以被稱爲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