视图+视图定义+创建视图+视图的表结构+创建视图的语句+查看视图哪些列是可以进行DML操作
2017-06-02 09:26
543 查看
视图
视图定义:
基于多表的预定义查询,这些表称为基表
可以通过视图对基表进行DML操作
在视图中检索信息与从基表中检索信息方法完全相同
注意:视图不存在数据,算是个虚表,视图只会访问基表的行
适用于:检查检索数据
优点:
限制用户只能通过视图检索数据,使用户看不到底层基表
将复杂查询编写为视图,降低sql的复杂性
限制用户只能访问基表的部分数据,实现安全性
创建视图
create [or replace] [force| noforcce] view 视图名【(别名,【别名】….)】
as
子查询(不能包含order by)
【with {check option | read only }【constraint 约束名】】
force:如果基表不存在,创建视图就会失败。但是可以使用force选项强制创建视图
noforcce:基表存在,才能创建视图
with check option :所插入的数据或者修改的数据行必须满足视图定义的约束条件,也就是说子查询的数据在插入视图中时,必须满足视图定义的约束条件
约束条件为子查询定义的where 条件
with read only :保证该视图不能进行任何的DML操作
replace:如果有视图存在,就替换
案列
注意:子查询可以多表连接,返回的结果作为视图的数据
视图的表结构
desc + 视图名
创建视图的语句
select view_name,text from user_views;
view_name:视图名
text :创建视图的语句
查看视图哪些列是可以进行DML操作
select column_name,updatable,insertable,deletable from user_updatable_columns
where table_name=upper(‘vstu’);
table_name:视图名称
视图定义:
基于多表的预定义查询,这些表称为基表
可以通过视图对基表进行DML操作
在视图中检索信息与从基表中检索信息方法完全相同
注意:视图不存在数据,算是个虚表,视图只会访问基表的行
适用于:检查检索数据
优点:
限制用户只能通过视图检索数据,使用户看不到底层基表
将复杂查询编写为视图,降低sql的复杂性
限制用户只能访问基表的部分数据,实现安全性
创建视图
create [or replace] [force| noforcce] view 视图名【(别名,【别名】….)】
as
子查询(不能包含order by)
【with {check option | read only }【constraint 约束名】】
force:如果基表不存在,创建视图就会失败。但是可以使用force选项强制创建视图
noforcce:基表存在,才能创建视图
with check option :所插入的数据或者修改的数据行必须满足视图定义的约束条件,也就是说子查询的数据在插入视图中时,必须满足视图定义的约束条件
约束条件为子查询定义的where 条件
with read only :保证该视图不能进行任何的DML操作
replace:如果有视图存在,就替换
案列
注意:子查询可以多表连接,返回的结果作为视图的数据
视图的表结构
desc + 视图名
创建视图的语句
select view_name,text from user_views;
view_name:视图名
text :创建视图的语句
查看视图哪些列是可以进行DML操作
select column_name,updatable,insertable,deletable from user_updatable_columns
where table_name=upper(‘vstu’);
table_name:视图名称
相关文章推荐
- Oracle视图可以进行DML操作的条件
- 什么是Oracle Key-Preserved Table和什么样的视图可以进行DML操作
- oracle 视图创建和操作,创建简单,复杂的视图,创建基表不存在的视图,视图增删改,查看视图的结构
- oracle 视图创建和操作,创建简单,复杂的视图,创建基表不存在的视图,视图增删改,查看视图的结构
- SQL Server 第四堂课,创建存储过程。存储过程是一组编译在单个执行计划中的transact-SQL语句。存储过程相当于C#函数,可以允许模块化程序设计,允许更快执行如果某操作需要大量transct-SQL代码或需要重复执行,将在创建存储过程中对其进行分析和优化。
- oracle 视图创建和操作,创建简单,复杂的视图,创建基表不存在的视图,视图增删改,查看视图的结构
- 哪些视图上不能进行DML操作
- oracle 视图 创建 操作 简单 复杂 基表 不存在 增 删 改 插入 修改 删除 查看 结构
- oracle 视图创建和操作,创建简单,复杂的视图,创建基表不存在的视图,视图增删改,查看视图的结构
- 转:oracle 视图创建和操作,创建简单,复杂的视图,创建基表不存在的视图,视图增删改,查看视图的结构
- 如何进行定义特性(Attribute),并且在程序中如何检索定义的特性,可以根据用户定义的不同特性进行不同的操作。
- oracle 中--怎么查看当前表空间在作什么操作?--查锁,死锁,当前执行时间长的Sql语句,没提交的事务,对象为哪些进程所用
- 根据数据字典表定义的表结构,生成创建表的SQL语句
- Factory 定义一个接口,客户可以使用这个接口创建一个对象.同时,我们还可以控制对那个类进行实例化
- Visitor 表示一个作用于某个对象结构中的各元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作
- oracle 中--怎么查看当前表空间在作什么操作?--查锁,死锁,当前执行时间长的Sql语句,没提交的事务,对象为哪些进程所用
- 允许进行DML操作的视图条件
- Oracle 视图可以DML操作的条件
- (转载)根据数据字典表定义的表结构,生成创建表的SQL语句
- PL SQL下通过语句查看表或者视图结构