日期:2014-05-16  浏览次数:20474 次

oracle 建序列,触发器
ORACLE是全球最大的关系数据库,她的使用有很多技巧,常用的建立表空间,创建序列,创建触发器等嗾使是初学者需要掌握的内容。

首先登陆数据库

启动命令行

CMD

SQLPLUS 以管理员(sys)登陆数据库

sqlplus sys/password as sysdba



创建临时表空间

create temporary tablespace test_temp
tempfile 'E:\mytemp.dbf'
size 32m;

创建数据表空间
create tablespace test_data
logging
datafile 'E:\mydata.dbf'
size 32m;


创建用户并指定表空间
create user testserver_user identified by testserver_user
default tablespace mydata
temporary tablespace mytemp;



给用户授予权限

grant connect,resource to testserver_user;



产生一个主键自增长的表


建表


CREATE TABLE example(
ID Number(4) NOT NULL PRIMARY KEY,
NAME VARCHAR(25),
PHONE VARCHAR(10),
ADDRESS VARCHAR(50));


然后,你需要一个自定义的sequence
CREATE SEQUENCE emp_sequence
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE -- 一直累加,不循环
NOCACHE -- 不建缓冲区
以上代码完成了一个序列(sequence)的建立过程,名称为emp_sequence,范围是从1开始到无限大(无限大的程度是由你机器决定的)



建立表后,继续建立触发器
CREATE TRIGGER "触发器名称" BEFORE
INSERT ON example FOR EACH ROW WHEN (new.id is null)
begin
select emp_sequence.nextval into: new.id from dual;
end;
然后插值

INSERT INTO example(Name,phone,address) Values('Cao','123456','James');



到此基本色操作完成