開花流水

          空山無人,水流花開。

          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 開花流水 閱讀(4015) 評論(0)  編輯  收藏 所屬分類: java技術
          主站蜘蛛池模板: 分宜县| 北海市| 察雅县| 大悟县| 汉川市| 越西县| 珠海市| 汾西县| 宁明县| 杭州市| 富裕县| 舞钢市| 吴旗县| 丰台区| 呼伦贝尔市| 禄劝| 棋牌| 凤城市| 大庆市| 扶余县| 科技| 石柱| 巴南区| 石城县| 景泰县| 富平县| 锡林浩特市| 饶河县| 汉寿县| 安远县| 蒙自县| 赣州市| 东方市| 贵南县| 富源县| 庄河市| 德化县| 宁南县| 呈贡县| 永平县| 清镇市|