create table participants (
partid number(19) not null primary key auto_increment,
partmn varchar(20) null,
partln varchar(20) null
)
当我在Oracle中运行此代码时,它给ORA-00907:删除右括号后删除auto_increment它正在运行
答案 0 :(得分:0)
没有" auto_increment"的概念。或"身份" Oracle中的列。但是,您可以使用序列轻松实现它。
在oracle 12之后,支持身份但不支持自动增量。
使用以下行
ALTER TABLE participants ADD (
CONSTRAINT partid_pk PRIMARY KEY (partid));
CREATE SEQUENCE party_seq;
Trigger definition:
CREATE OR REPLACE TRIGGER party
BEFORE INSERT ON participants
FOR EACH ROW
BEGIN
SELECT party_seq.NEXTVAL
INTO :new.partid
FROM dual;
END;
对于oracle 12及以上版本,您可以使用不带下面的触发器
CREATE SEQUENCE participants_seq;
CREATE TABLE participants (
partyId NUMBER DEFAULT participants _seq.NEXTVAL,
other column definitions
);