生成随机密钥,包括oracle中的当前插入列值是否可以创建

时间:2013-12-19 08:00:30

标签: oracle10g

我正在尝试生成一个随机密钥,包括oracle中的当前插入列值是否可以创建?

CREATE TABLE MY_TABLE
(
  KEY VARCHAR2(12) not null,
  SITEID varchar2(25) not null,
  SITENAME varchar2(50),
  CONSTRAINT MY_pk PRIMARY KEY (KEY)
);

INSERT INTO MY_TABLE (KEY, SITEID, SITENAME)
VALUES(('ABCD001'||SITEID), 'HYD001', 'HYDERABADSITE');

1 个答案:

答案 0 :(得分:0)

最好使用BEFORE TRIGGER来执行此操作。等,

CREATE OR REPLACE 
TRIGGER my_table_trigger
BEFORE INSERT ON my_table
FOR EACH ROW
BEGIN
     :NEW.KEY := 'ABCD001'||:NEW.siteid;
END;