gpt4 book ai didi

oracle - 插入空行

转载 作者:行者123 更新时间:2023-12-04 23:54:46 24 4
gpt4 key购买 nike

这太简单了,可能已经有人问过了,但我找不到(如果是这样,我很抱歉问)。

我想在表上插入一个空行,以便我可以通过 ExecuteScalar 获取其 ID(主键,由插入触发器生成)。稍后在我的代码中将数据添加到其中。

我的问题是:是否有特定的插入语法来创建空记录?还是必须使用常规插入语法,例如“INSERT INTO 表(列出所有列)值(每列为空)”?

谢谢你的回答。

更新:在 Oracle 中,插入上的 ExecuteScalar 仅返回 0。最终答案是下面发布的内容的组合。首先,您需要声明一个参数,并使用 RETURNING 获取它。

INSERT INTO TABLENAME (ID) VALUES (DEFAULT) RETURNING ID INTO :parameterName

看看这个 link了解更多信息。

最佳答案

您不必指定每一列,但您可能无法创建“空”记录。检查表上的 NOT NULL 约束。如果没有(不包括主键约束),那么您只需要提供一列。像这样:

insert into my_table ( some_column )
values ( null );

你知道 RETURNING 子句吗?当您执行 INSERT 时,您可以将该 PK 返回给您的调用应用程序。
insert into my_table ( some_column )
values ( 'blah' )
returning my_table_id into <your_variable>;

不过,我会质疑这种方法。为什么要创建一个空行?这将/可能意味着该表没有限制,如果您想要好的、干净的数据,这是一件坏事。

关于oracle - 插入空行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18280334/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com