视图数据的更新-django与vue的完美结合_实现前后端的分离开发之后在整合的方法

时间:2024-07-14 13:13:28
【文件属性】:

文件名称:视图数据的更新-django与vue的完美结合_实现前后端的分离开发之后在整合的方法

文件大小:4.2MB

文件格式:PDF

更新时间:2024-07-14 13:13:28

达梦数据库 sql

6.6 视图数据的更新 视图数据的更新包括插入(INSERT)、删除(DELETE)和修改(UPDATE)三类操作。由 于视图是虚表,并没有实际存放数据,因此对视图的更新操作均要转换成对基表的操作。在 SQL语言中,对视图数据的更新语句与对基表数据的更新语句在格式与功能方面是一致的。 例 从视图 VENDOR_EXCELLENT中将名称为人民邮电出版社的 ACTIVEFLAG改为 0。 UPDATE PURCHASING.VENDOR_EXCELLENT SET ACTIVEFLAG = 0 WHERE NAME = '人民邮电出版社'; 系统执行该语句时,首先从数据字典中取出视图 VENDOR_EXCELLENT 的定义,将其 中的查询说明与对视图的修改语句结合起来,转换成对基表的修改语句,然后再执行这个转 换后的更新语句。 UPDATE PURCHASING.VENDOR SET ACTIVEFLAG = 0 WHERE NAME = '人民邮电出版社' AND CREDIT = 1; 例 往视图 VENDOR_EXCELLENT中插入一个新的记录,其中 ACCOUNTNO为 00,NAME 为电子工业出版社,ACTIVEFLAG为 1,WEBURL为空。则相应的插入语句为: INSERT INTO PURCHASING.VENDOR_EXCELLENT(ACCOUNTNO, NAME, ACTIVEFLAG, CREDIT) VALUES('00 ', '电子工业出版社', 1, 1); 例 从视图 VENDOR_EXCELLENT中删除名称为中华书局的供应商信息。 DELETE FROM PURCHASING.VENDOR_EXCELLENT WHERE NAME = '中华书局'; 系统将该语句与 VENDOR_EXCELLENT视图的定义相结合,转换成对基表的语句: DELETE FROM PURCHASING.VENDOR WHERE NAME = '中华书局' AND CREDIT = 1; 系统执行该语句,会报告违反约束错误,因为 VENDOR_EXCELLENT 尽管是视图,在 做更新时一样要考虑基表间的引用关系。PRODUCT_VENDOR表与 VENDOR表存在着引用关 系,PRODUCT_VENDOR 表为引用表,VENDOR 表为被引用表,只有当引用表中没有相应 VENDORID时才能删除 VENDOR表中相应记录。 在关系数据库中,并不是所有视图都是可更新的,即并不是所有的视图更新语句均能有 265


网友评论