開花流水

          空山無人,水流花開。

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            79 Posts :: 42 Stories :: 160 Comments :: 0 Trackbacks

          先創建一個名字為test_Sequence的序列,然后執行下列語句,
          CREATE TABLE example1(
          ID Number(4) NOT NULL PRIMARY KEY,
          NAME VARCHAR(25),
          PHONE VARCHAR(10),
          ADDRESS VARCHAR(50));


          create trigger "example1_tt" before insert
          on "EXAMPLE1" for each row
          declare
              integrity_error  exception;
              errno            integer;
              errmsg           char(200);
              dummy            integer;
              found            boolean;

          begin
              --  Column ""ID"" uses sequence Sequence_increase
              select test_Sequence.Nextval INTO :new."ID" from dual;

          --  Errors handling
          exception
              when integrity_error then
                 raise_application_error(errno, errmsg);
          end;

          需要注意的是不同的表共用同一個序列時,由于序列的是一個,所以不同表的自增會不連續,另外和SqlServer不同的還有,設置了這個以后主鍵是可以自己維護的,只有當主鍵為空時才會調用觸發器,由序列產生自增值。

          另外,pd自動生成的oracle的sql語句是包含雙引號的,可能導致oracle權限的錯誤,錯誤提示是:ORA-00904:invalid identifier。
          posted on 2010-07-30 17:26 開花流水 閱讀(4018) 評論(0)  編輯  收藏 所屬分類: java技術
          主站蜘蛛池模板: 宕昌县| 湘潭县| 永济市| 龙川县| 肇东市| 丹阳市| 陈巴尔虎旗| 阿鲁科尔沁旗| 汽车| 德钦县| 罗源县| 青神县| 汾阳市| 巴林右旗| 施甸县| 深州市| 明光市| 靖西县| 临漳县| 巴林右旗| 佳木斯市| 宁海县| 驻马店市| 洪江市| 井研县| 湖南省| 清流县| 隆化县| 巴彦淖尔市| 大新县| 黑河市| 巫溪县| 牟定县| 南皮县| 宁乡县| 怀集县| 普兰店市| 白水县| 昭平县| 仪陇县| 长白|