pl/sql基础入门之同义词和序列
pl/sql:过程语言(procedure language)和结构化语言(structured query language)结合而成的语言,是对sql的扩展,支持多种数据类型,如大对象和集合类型,可使用条件和循环等控制语句,可创建存储过程,程序包和触发器等,给sql语句的执行添加程序逻辑,与oracle服务器和oracle工具紧密集成,具有可移植性,灵活性和安全性。
同义词:
/*
同义词:现有对象的一个别名;
优点:1.简化sql;2.隐藏了对象的名称和所有者;3.提供对对象的公共访问
*/
–创建私有同义词,只能在模式内访问,且不能与当前对象同名
create or replace synonym em for emp; select *from em; drop synonym em;
–创建公有的同义词,可以被所有的用户访问,当然别的用户要有访问权限
create or replace synonym em for emp; select *from em; drop synonym em;
/*
序列:用于生成唯一,连续序号的对象,可以使升序,也可以使降序
*/
create or replace synonym em for emp; select *from em; drop synonym em;
–查询序列
select my_seq.nextval from dual;-- 序列下一个值 select my_seq.currval from dual;-- 序列当前值 create table person( pid number primary key, pname varchar2(20) )