欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Oracle实践--PL/SQL基础之同义词和序列

程序员文章站 2022-09-08 19:08:13
pl/sql基础入门之同义词和序列 pl/sql:过程语言(procedure language)和结构化语言(structured query language)结合而成的语言...

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)
)