在對數據庫操作中,經常會使用視圖,進行增刪改查等操作,視圖的優點在這里不再贅述,今天主要說一下,對於視圖的創建以及視圖和多表之間的刪除操作。
首先在數據庫中有兩張表,一張表是new_1,另一張是sample表。
在new_1表中數據如下:
在sample表中數據如下:
從數據中可以看出,new_1表中的site_id有一條數據是A116,在sample表中的addr字段也有一條數據是A116。接下來我們就對這條數據進行刪除操作。(前提是只刪除new_1)中的數據。
首先我們來創建一個視圖:
CREATE VIEW testView ASSELECT * FROM sample;
查看視圖是否創建成功:
從圖中我們可以看到,視圖已經創建成功,接下來進行刪除操作。
DELETE n1 FROM new_1 n1,testView t WHERE t.addr = n1.site_id AND n1.site_id='A116'
運行上面sql命令,就可以在new_1表中成功刪除記錄為A116的數據。
運行select * form new_1 where site_id='A116';查看是否成功。在這條sql中只會刪除new_1中的記錄,視圖中的不會被刪除,,假如還需要刪除視圖中的記錄,在n1后加上視圖別名即可,多表之間的刪除亦是如此。