数据库有哪些重要的对象
什么是对象:对象就是性质相同的数据元素的集合
Oracle数据库的对象:表(table),视图(view),索引(index),函数(function),存储过程(procedure),
包(package),触发器(trigger),序列(sequence)
如何创建视图
create view 视图名
as
select查询语句(内联视图);
如何创建序列
create sequence 序列名
start with num1 --开始数值
increment by num2 --步长
maxvalue maxnum3 --最大值
nocache nocycle; --无循环
用 序列名.nextval() 表示取出下一个值,同时序列值就会以步长自增加 序列名.currval()表示取出当前的值
注意:刚刚定义的序列是不能直接用currval()来查看的,只能用过一次nextval()之后才可以的。
如何创建函数
create or replace function 函数名(参数 in 类型)
return 类型
is
声明变量
begin
过程;
return(变量值)
end;
如何创建存储过程
create or replace procedure 过程名(参数 in number)is
声明变量
begin
过程;
commit;
end 过程名;
如何执行刚创建的存储过程
通过命令窗口:execute 过程名(数值);
如何创建索引
create index 索引名 on 表名(列名);
如何创建同义词
首先要确认用户是否拥有创建同义词的权限
select * from session_privs
where privilege like '%SYNONYM%';
授权:
grant create any synonym to 用户名;
或 grant create public synonym to 用户名;
比如:
create synonym wbs for wangbisheng;--为wangbisheng创建一个短的同义词
create public synonym emp for scott.emp; -- 创建公共同义词
重点:Oracle数据库中函数和存储过程有何区别?
<1>函数必须有返回值,而存储过程没有返回值
<2>函数可以单独执行,而过程必须通过execute执行
<3>函数可以嵌入SQL中执行,而过程不能
·