只有满足全部条件的简单视图才可更新:SELECT仅含基表列、单表FROM、无聚合/JOIN/子查询/GROUP BY、WHERE不含函数包裹列、基表主键在SELECT中。

SQL中的视图本身不存储数据,只是保存的查询定义,因此“更新视图”本质上是通过视图间接更新其底层基表的数据。但并非所有视图都支持更新操作——能否更新,取决于视图定义是否满足可更新性条件。
只有满足以下全部条件的简单视图才被认为是“可更新视图”:
以下写法会导致视图失去更新能力:
不同数据库对可更新视图的支持程度略有不同:
一个功能强大的B2B与B2C的购物平台,除了原本OSC功能外,增加更新的功能: 一、 取消了register_globals必须开启的限制 二、 將HTML程式碼与PHP程式碼完全分离,採用了smarty 樣板引擎 三、 每支档案includes所需函数与资料库连结,使的网页显示速度明显提升 四、 检视、购买商品群组权限设定 五、 十八岁以下禁购机制 六、 折价券购物抵扣机制 七、 礼券购物机制
0
实际开发中,稳妥操作比强行更新更重要:
基本上就这些。可更新视图不是语法问题,而是语义约束问题——关键看数据库能否明确、唯一地将视图操作映射回基表行为。
以上就是SQL更新视图与使用限制_SQL可更新视图说明的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号