oracle建表並主鍵自增
/*
建立使用者表
*/
create table user_info_T(
id integer not null ,
user_id varchar(50),
user_name varchar(50),
user_password varchar(50),
user_sex varchar(20),
user_age integer ,
user_address varchar(50),
user_batch varchar(50),
constraint user_info_T_pk primary key (id)
);
/*
建立自增長序列
*/
drop sequence dectuser_tb_seq; /* 若以存在則刪除*/
create sequence dectuser_tb_seq minvalue 1 maxvalue 99999999
increment by 1
start with 1;
/*
建立觸發器
*/
create or replace trigger dectuser_tb_tri
before insert on user_info_T /*觸發條件:當向表dectuser執行插入操作時觸發此觸發器*/
for each row /*對每一行都檢測是否觸發*/
begin /*觸發器開始*/
select dectuser_tb_seq.nextval into :new.id from dual; /*觸發器主題內容,即觸發後執行的動作,在此是取得序列dectuser_tb_seq的下一個值插入到表user_info_T中的id欄位中*/
end;
/*
提交
*/
commit
/*
測試
*/
insert into user_info_T(user_id,user_name,user_password,User_Sex,User_Age) values ('warren','石頭','warren','M',22);/*插入測試值*/
select * from user_info_T /*查詢*/