首页 > 试题广场 >

对所有的视图都可以进行下面哪一个操作?()

[单选题]
对所有的视图都可以进行下面哪一个操作?()
  • 插入
  • 选择
  • 更新
  • 删除
视图也可以删除呀,为什么是错的
发表于 2019-12-17 09:55:25 回复(2)
视图的定义强于表,视图可以包含多个表,所以应该是选择。而更新等操作就显得力有不逮了
发表于 2017-12-03 23:39:47 回复(0)

视图的特点:

1.视图是一个虚表,

2.视图就是封装了一条复杂查询的sql语句集,

3.它与真实表保持同步,也就是修改视图会影响真实表,修改真实表也会影响视图,

4.视图可以屏蔽一些敏感信息,起到安全的作用,

5.视图可以简化复杂查询,

6.视图也很方便,对于一个特定的操作,不用重新编写sql语句。

总结:视图多数情况下是用来查询的,尽量不要修改视图,因为会导致真实表的数据发生变化,导致错误。
发表于 2020-06-10 07:56:07 回复(1)
没懂求解答,难道还有不能删除的视图?
发表于 2019-04-17 14:20:55 回复(3)

只有行列子集视图可以被执行更新操作

发表于 2018-11-03 20:35:43 回复(0)
这个题没毛病;
所有的视图都能进行 select查询操作,但是不是所有的视图能够进行insert,update,delete操作;
具体原因:
只有满足以下条件的视图才可插入:
1.视图基于一个表(只从一个表中查询数据,没有涉及多表联合(如JOIN)、子查询、聚合等复杂操作);
2.定义视图不包含聚合函数、分组、DISTINCT、LIMIT 等;
3.视图中包含插入所需的所有字段(无计算列);所需要的字段比如主键 必须进行传参 ,不然不能对视图进行插入,还有not null的字段,且没默认值,需要传参。

同理,不是所有视图都能更新。如果视图基于多个表、包含聚合、子查询等,也无法更新。

也受到和插入、更新相同的限制,不一定能对视图直接执行删除操作。

也就是说只有满足了视图基于一个表,bubaoha
发表于 2025-05-19 08:33:46 回复(0)
要加上cascade才能删除,默认是restrict
发表于 2021-10-26 11:58:43 回复(0)
某度搜的:创建视图的时候+ with check option就能控制??
发表于 2020-03-31 09:11:31 回复(0)