【问题标题】:PK Insert in Oracle (similar to --- SET IDENTITY_INSERT table on, in SQL Server)Oracle 中的 PK 插入(类似于 --- SET IDENTITY_INSERT 表上,在 SQL Server 中)
【发布时间】:2020-05-21 01:02:23
【问题描述】:

在 SQL Server 中,需要将某些选项设置为 ON 才能在 ID 列中插入值 - SET IDENTITY_INSERT table ON

有人可以帮我处理 Oracle 的等价物吗?还是Oracle默认允许插入ID值?

我们应该在 Oracle 中用什么替换 SET IDENTITY_INSERT table ON/OFF

【问题讨论】:

  • 您使用的是哪个 Oracle 版本?你是如何定义主键的?请edit您的问题并为相关表格添加完整的CREATE TABLE 语句。

标签: oracle primary-key identity-column


【解决方案1】:

Oracle 12c 最终引入了正确的标识列概念(而不是必须手动管理序列)。无需像在 SQL Server 中那样打开或关闭它,您可以通过这种方式定义表:

CREATE TABLE mytable (
    id NUMBER GENERATED BY DEFAULT AS IDENTITY
    -- other columns you need...
)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-11
    • 1970-01-01
    相关资源
    最近更新 更多