首页 > 代码库 > orace学习操作(2)
orace学习操作(2)
一、Oracle视图
视图是虚表,没有具体物理数据,是通过实体表的一种计算映射逻辑。主要就是为了方便和数据安全;
实际当中的数据依然存在我们的实际表里面,只不过取数据的时候根据这个视图(子查询)从实际当中的表来查,把它当成一个表来用;
1.创建视图:
给用户授予创建视图的权限:grant create table,create view to scott;
查看当前用户下有哪些视图:select view_name from user_views;
查看用户的角色; select * from user_role_privs;
查看角色对应的权限;SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE=‘DBA‘;
授予用户dba权限 grant dba to scott;
3.使用视图:
4.只读视图:
Create view 视图名称as 查询语句with read only ;
5.删除视图 drop view v_emp
二、oracle约束条件:
1.非空约束、默认值约束:
给约束起名字:stu_name_nn:
2.唯一约束,unique:
加了唯一约束后,就不能再email这个字段加重复的值了。
unique约束可以加null值,两个null值之间不认为是重复的;
//上面的都是字段级的约束,但是如果说要让名字和eamil的组合不能重复,怎么做?
---表级的约束:
3.主键约束:
主键逻辑意义上唯一标识整条记录。
主键的这个字段:不能为空、必须唯一;
或者:
4.外键约束:
班级表:
stu表的class列,参考class表的ID字段:
注意:
stu表的class这个字段存在外键约束class 的id
被参考字段必须是主键----class 的id必须为主键;主键非空、唯一
另外的写法:
5.check 检查约束
下面这个check约束是name必须为大写:
相当于这样的写法:
create table t_stu(
id number primary key,
name varchar2(20) check (name=upper(name))
)
check用的很少,一般在程序中已经进行验证了。。
三、
orace学习操作(2)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。