建立自增序列,建立觸發器(在觸發時間中操縱序列,實現主鍵自增):數據庫
Oracle數據庫不支持自增方法spa
create sequence seq_userInfo_usid start with 1;--建立一個序列從1開始 create or replace triggle tri_userInfo --建立或替換 名稱爲tri_userInfo觸發器 before before insert or update on UserInfo --在向userInfo表中添加和修改, 記錄以前的觸發 for each row --沒影響一行出發一次 begin --觸發以後執行下面的語句 IF INSERTING THEN --插入數據操做 select seq_testTragger_id.nextval into :new.UserId from dual; --:new新值 :old老值 :NEW.UserId := seq_testTragger_id.currval; :NEW.createtime := systimestamp; ELSIF UPDATING then --修改數據操做 :NEW.createtime := systimestamp; END IF; end;
--查看全部觸發器 select * from user_triggers; --禁用觸發器 alter trigger tri_uname(觸發器名字) disable; --激活觸發器 alter trigger tri_uname(觸發器名字) enable; --從新編譯 alter trigger tri_uname(觸發器名字) complie; --禁用某個表上的觸發器 alter table table_name(表名) diable all triggers; --刪除觸發器 DROP TRIGGER tri_uname(觸發器名字); --刪除序列 DROP SEQUENCE seq_testTragger_id(序列名); --清空表數據 DELETE FROM table_name(表名);alter table table_name add constraint Field_PRIMARY(任意取) primary key (column_Field)(單個字段肯定惟一性)
--爲字段設置默認值
--例子:將年齡的默認值設置爲22
alter table table_name(表名) add constraint dt_age(默認名,任意取) default 22(值) for 年齡(字段);
--爲字段設置主鍵
--爲字段設置複合主鍵
alter table table_name add constraint Field_PRIMARY(任意取) primary key (column_Field1,column_Field2....)(多個字段肯定惟一性)