MySQL-视图DML限制

Author Avatar
丁起男 07月 12,2022
  • 在其它设备中阅读本文章

MySQL-视图DML限制

dml操作(insert、update、delete)

不是所有视图都可以做dml操作。有如下情况的,不能做dml操作:

  • select子句中包含distinct
  • select子句中包含组函数
  • select语句中年包含group by子句
  • select语句中包含order by子句
  • select语句中包含union、union all等集合运算符
  • where子句中包含子查询
  • from子句中包含多个表
  • 如果视图中有列计算,则不能更新
  • 如果基表中有某个具有非空约束的列未出现在视图定义中,则不能做insert操作