码迷,mamicode.com
首页 > 其他好文 > 详细

模式对象----序列、同义词、视图

时间:2015-11-10 21:06:20      阅读:234      评论:0      收藏:0      [点我收藏+]

标签:

今天学的模式对象,感觉学的不是太好,趁着自习时间来梳理一遍,以便以后查阅使用

 

1、模式对象---序列(sequence)

在创建序列之前必须先在system中给对象exam设置sequence模式

grant create sequence  to exam; 

创建序列: 

-- Create sequence
           create sequence seq_course      
    minvalue 1              ---最小值
    maxvalue 9999999999999999999   ---最大值
    start with 1               ---起始值
    increment by 10            ---每次增加的数
    cache 20;               ---缓存

 

 

检查序列:

从序列中取出下一个值: select seq_course.nextval from dual;

从序列中取出当前值:    select seq_course.currval from dual;

 

2、     模式对象 --- 同义词(synonym)

在创建序列之前必须先在system中给对象exam设置synonym模式

管理员授权: grant create synonym to exam;

 

  创建同义词:

    create or replace synonym st for exam.course     -----exam对象--- course:是exam对象下的一张表

 

  使用: select * from st ;

 

 

3、    模式对象 ---- 视图(view)

 

  

create table person
(
name varchar(100) not null,
birth date default sysdate,
sex char(1) check(sex in (‘m‘,‘f‘,‘n‘))
);

insert into person values(‘tom1‘,default,‘f‘);
insert into person values(‘tom2‘,sysdate-100,‘f‘);
insert into person values(‘tom3‘,sysdate-200,‘f‘);

select * from person;

select
name,
to_char(birth,‘YYYY"年"MM"月"DD"日"‘) as birth,
decode(sex,‘f‘,‘女‘,‘m‘,‘男‘,‘妖‘) as sex
from person;

grant create view to exam;
------------------------------------------
创建修改视图
create or replace view v_person
as
select
name,
to_char(birth,‘YYYY"年"MM"月"DD"日"‘) as birth,
decode(sex,‘f‘,‘女‘,‘m‘,‘男‘,‘妖‘) as sex
from person;

删除视图
drop view v_person;

使用视图--当成表来用(查询用)
select * from v_person

 

视图:  1、把复杂的东西简单化  2、作为一个表进行使用(隐藏部分)

 

模式对象----序列、同义词、视图

标签:

原文地址:http://www.cnblogs.com/sdfd101/p/4954110.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!