无法使用 SQL 插入数字 - 整列已删除/数字为空
Cannot insert a number using SQL - whole column is removed / number is null
我正在尝试通过循环将数字作为 ID 插入数据库的列中,该循环通过序列设置新 ID。当我尝试插入它时,该行尚未创建或我的号码所在的字段为空。
这仅在我尝试插入序列当前编号的值时出现。可以插入任何其他数字。 id 不是主键或外键,只是一个普通字段。我尝试用几种不同的方法插入它,例如从字段 select 插入它或对插入脚本中的值进行硬编码。如果使用 sid 的值对其进行硬编码,则不会插入任何行。
insert into SCHULP_BEZIEHUNG (R_ID, B_ID,S_ID,WDH,HOTEL)
values(
SEQ_SCHULP_ID.NEXTVAL
,l_selected(i)
,(select distinct SSID from SCHULP_SCHULUNGEN where SID = :P2_ID and SSID is not null)
,5
,'test');
我的预期结果是它在 S_ID
列中插入了 SID 的编号
数据库图像:
这是什么:
This only appears when I'm trying to insert the value of the current number of the sequence.
与什么有关?如果 seq_schulp_id.nextval
在您的尝试中实际上是 seq_schulp_id.currval
,那么是的,在您首先获取 nextval
之前它不会工作,因为 currval
尚未在当前会话。
另一个反对意见是 :P2_ID
,这是一个 Apex 页面项目。如果您想要使用它,仅仅 在屏幕上看到 它是不够的 - 它必须进入会话状态。最简单的方法是先 提交 页面,然后 运行 将插入数据的进程。
另一方面,您说您对值(哪个值?:P2_ID
?)进行了硬编码,但您仍然没有设法将值插入 S_ID
列。这意味着整个查询:
select distinct SSID from SCHULP_SCHULUNGEN where SID = :P2_ID and SSID is not null
返回没有。
您发布了不完整的代码(l_selected(i)
是什么?);我不知道是否还有其他问题。
我正在尝试通过循环将数字作为 ID 插入数据库的列中,该循环通过序列设置新 ID。当我尝试插入它时,该行尚未创建或我的号码所在的字段为空。
这仅在我尝试插入序列当前编号的值时出现。可以插入任何其他数字。 id 不是主键或外键,只是一个普通字段。我尝试用几种不同的方法插入它,例如从字段 select 插入它或对插入脚本中的值进行硬编码。如果使用 sid 的值对其进行硬编码,则不会插入任何行。
insert into SCHULP_BEZIEHUNG (R_ID, B_ID,S_ID,WDH,HOTEL)
values(
SEQ_SCHULP_ID.NEXTVAL
,l_selected(i)
,(select distinct SSID from SCHULP_SCHULUNGEN where SID = :P2_ID and SSID is not null)
,5
,'test');
我的预期结果是它在 S_ID
列中插入了 SID 的编号数据库图像:
这是什么:
This only appears when I'm trying to insert the value of the current number of the sequence.
与什么有关?如果 seq_schulp_id.nextval
在您的尝试中实际上是 seq_schulp_id.currval
,那么是的,在您首先获取 nextval
之前它不会工作,因为 currval
尚未在当前会话。
另一个反对意见是 :P2_ID
,这是一个 Apex 页面项目。如果您想要使用它,仅仅 在屏幕上看到 它是不够的 - 它必须进入会话状态。最简单的方法是先 提交 页面,然后 运行 将插入数据的进程。
另一方面,您说您对值(哪个值?:P2_ID
?)进行了硬编码,但您仍然没有设法将值插入 S_ID
列。这意味着整个查询:
select distinct SSID from SCHULP_SCHULUNGEN where SID = :P2_ID and SSID is not null
返回没有。
您发布了不完整的代码(l_selected(i)
是什么?);我不知道是否还有其他问题。