在表TSL100_HYWH中SLID字段上实现自增字段create sequence S_3125_1_TSL100_HYWH
minvalue 1
maxvalue 999999999999999999999999999
start with 1
increment by 1
cache 20;CREATE OR REPLACE TRIGGER TR_S_3125_1_TSL100_HYWH
 BEFORE INSERT ON TSL100_HYWH
 FOR EACH ROWBEGIN
 SELECT S_3125_1_TSL100_HYWH.nextval
 INTO :new.SLID
 FROM dual;
 END;
/

解决方案 »

  1.   

    我是菜鸟
    那为大哥能帮我解释一下什么意思啊
    我看不懂啊!
    create sequence admin_trigger
    minvalue 1
    maxvalue 99999
    start with 1
    increment by 1
    cache 20;CREATE OR REPLACE TRIGGER admin_trigger
     BEFORE INSERT ON T_admin
     FOR EACH ROWBEGIN
     SELECT admin_trigger.nextval
     INTO :new.admin_id
     FROM dual;
     END;
    在Oracle中提示错误 啊!
      

  2.   

    请说明白一点儿,在Oracle里面如何实现向MSSQLserver2000的主键?
    在oracle中对MSSQLserver2000中的表建主键?如果是这样的话:
    透明网关是不能实现ddl的!透明网关不行!
    你可以在oracle中建立java存储过程,在java存储过程中实现建立MSSQLserver2000的主键!
      

  3.   

    create sequence admin_trigger
    minvalue 1
    maxvalue 99999
    start with 1
    increment by 1
    cache 20;CREATE OR REPLACE TRIGGER admin_trigger
     BEFORE INSERT ON T_admin
     FOR EACH ROWBEGIN
     SELECT admin_trigger.nextval
     INTO :new.admin_id
     FROM dual;
     END;
    呵呵。你就用EMS建吧。在里面的找到“序列”就可以建立了~~!
    这样做也许效率高一点。但是你完全可以自己来实现。
    每次自己取出最大值加一再放进去。
    呵呵我就是这么解决的。觉得用序列和自己用自己的方法工作差不多。
    而自己写的还直观一点哈。
    select max(id) into xxx from your_table
    insert into you_table(id,x,x,x,x,x,)values(xxx,...........)
    呵呵。高手不要笑哈。
    只要能解决问题什么办法都的想哈。
      

  4.   

    哦!要自增字段呀!luckbird(luckbird)和Thorpy(小佩) 的方法都可以呀。