rod*_*goq 9 t-sql migration oracle sequence identity-insert
我必须将此查询(此处简化)从T-SQL迁移到ORACLE
SET IDENTITY_INSERT table ON
INSERT INTO table (id, value) VALUES (1, 2)
SET IDENTITY_INSERT table OFF
Run Code Online (Sandbox Code Playgroud)
id 是SQLServer中的标识字段.
我在ORACLE中有一个与序列相同的表,我找不到一个片段,显示如何禁用序列并将其设置为使用MAX(id)+ 1再次启动.
任何ORACLE专家都可以帮我解决这个问题吗?
谢谢,罗德里戈.
您不必在Oracle中禁用标识.由于您正在使用序列,因此不要将其用于该插入.
也就是说,而不是
insert into table (id, values) values (table_seq.nextval, 2)
Run Code Online (Sandbox Code Playgroud)
你用
insert into table (id, values) values (1, 2)
Run Code Online (Sandbox Code Playgroud)
至于你关于重新启动序列的第二个问题,我认为在这里回答了这个问题.