加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 湛江站长网 (https://www.0759zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长百科 > 正文

oracle – 插入一个空行

发布时间:2021-02-06 14:13:56 所属栏目:站长百科 来源:网络整理
导读:这很简单,可能已经被问到了,但是我找不到它(如果是这样的话我很抱歉). 我想在表上插入一个空行,以便我可以通过ExecuteScalar获取其ID(主键,由插入触发器生成).稍后在我的代码中添加数据. 我的问题是:是否有一个特定的插入语法来创建一个空记录?或者我必

这很简单,可能已经被问到了,但是我找不到它(如果是这样的话我很抱歉).

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

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

谢谢你的回答.

更新:在Oracle中,INSERT上的ExecuteScalar仅返回0.最终答案是下面发布的内容的组合.首先,您需要声明一个参数,然后使用RETURNING进行提取.

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

有关详细信息,请查看link.

解决方法

基本上,为了插入一行,其中所有列的值都是NULL,除了primary

键列的值可以执行一个简单的insert语句:

insert into your_table(PK_col_name)
  values(1);                          -- 1 for instance or null

before insert触发器,负责填充主键列

覆盖insert语句的values子句中的值,留下一个

除PK值外的空记录.

(编辑:PHP编程网 - 湛江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!