在对数据库操作中,经常会使用视图,进行增删改查等操作,视图的优点在这里不再赘述,今天主要说一下,对于视图的创建以及视图和多表之间的删除操作。
首先在数据库中有两张表,一张表是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后加上视图别名即可,多表之间的删除亦是如此。