oracle - 哪个命令将替换Oracle中SQLServer的IDENTITY INSERT ON/OFF?

标签 oracle tsql migration sequence identity-insert

我必须将此查询(在此简化)从T-SQL迁移到ORACLE

SET IDENTITY_INSERT table ON

INSERT INTO table (id, value) VALUES (1, 2)

SET IDENTITY_INSERT table OFF
id是SQLServer中的一个Identity字段。

我在ORACLE中有一个序列与同一张表,我找不到一个片段来显示如何禁用该序列并将其设置为以MAX(id)+ 1重新开始。

任何ORACLE专家都可以帮助我吗?

谢谢,
罗德里戈。

最佳答案

您不必在Oracle中禁用身份。由于您使用的是序列,因此请勿将其用于插入。

也就是说,代替

insert into table (id, values) values (table_seq.nextval, 2)

你用
insert into table (id, values) values (1, 2)

关于您关于重新启动序列的第二个问题,我认为这是在SO中回答的here

关于oracle - 哪个命令将替换Oracle中SQLServer的IDENTITY INSERT ON/OFF?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2758990/

相关文章:

java - 来自 weblogic 的数据库连接

sql - 带有 MINUS INTERSECT 和 UNION 的 SELECT 子句

android - 绕过AndroidX迁移错误而不禁用Lint

c# - 如何启用迁移以在 MVC4 中更新我的数据库?

java - 为什么我收到 java.sql.SQLException : ORA-01002: fetch out of sequence exception

sql - 如何从列的值中删除双引号?

sql - 如何为列的每个唯一值仅选择前行?

sql - Find Last Record in Chain - 一个客户合并过程

Java EJB 迁移到 Spring

oracle - 我如何在 PL/SQL 中创建一个可以创建限制的触发器,以便它们只能放置 1 个字符?