Oracle SQL错误:索引::1处缺少IN或OUT参数--将记录插入表时出错
我正在尝试将一条记录插入到下表中,这是插入脚本,我在索引处缺少in或OUT参数::1错误,请帮助Oracle SQL错误:索引::1处缺少IN或OUT参数--将记录插入表时出错,oracle,oracle-sqldeveloper,Oracle,Oracle Sqldeveloper,我正在尝试将一条记录插入到下表中,这是插入脚本,我在索引处缺少in或OUT参数::1错误,请帮助 INSERT INTO ABC.ENTRY_TABLE (D_ID, CD, DSC, EMAIL_DL_ID, SUBJECT_QUERY, BODY_QUERY, ATTACHMENT_QUERY, ATTACHMENT_NAME, RECORD_COUNT_RESTRICTION, CREATE_DT, CREATE_BY, UPDATE_D
INSERT INTO ABC.ENTRY_TABLE
(D_ID, CD, DSC, EMAIL_DL_ID, SUBJECT_QUERY, BODY_QUERY,
ATTACHMENT_QUERY, ATTACHMENT_NAME, RECORD_COUNT_RESTRICTION,
CREATE_DT, CREATE_BY, UPDATE_DT, UPDATE_BY, SEND_EMAIL_FLG,
ATTACHMENT_FLAG_QUERY )
VALUES( (select max(D_ID)+1 from ABC.ENTRY_TABLE),
'TEST','TEST report',
(select max(EMAIL_DL_ID)+1 from ABC.ENTRY_TABLE),
'select case when row_count > 1 then 'TEST: Missing Records' else 'TEST: No Missing Records' end from (select count(*) row_count from DDD.TOTAL_RCORDS)',
'select case when row_count > 1 then 'Attached are Missing Records' else 'No Missing Records' end from (select count(*) row_count from DDD.TOTAL_RCORDS)',
NULL,SYSDATE,'TEST',SYSDATE,'TEST',
'SELECT 'Y' FROM DUAL',
'select case when row_count > 1 then 'Y' else 'N' end from (select count(*) row_count from DDD.TOTAL_RCORDS)'
);
更新的查询:
INSERT INTO ABC.ENTRY_TABLE
(
D_ID
, CD
, DSC
, EMAIL_DL_ID
, SUBJECT_QUERY
, BODY_QUERY
, ATTACHMENT_QUERY
, ATTACHMENT_NAME
, RECORD_COUNT_RESTRICTION
, CREATE_DT
, CREATE_BY
, UPDATE_DT
, UPDATE_BY
, SEND_EMAIL_FLG
, ATTACHMENT_FLAG_QUERY )
VALUES(
(select max(D_ID)+1 from ABC.ENTRY_TABLE)
,'TEST'
,'TEST report'
,(select max(EMAIL_DL_ID)+1 from ABC.ENTRY_TABLE)
,'select case when row_count > 1 then 'TEST: Missing Records' else 'TEST: No Missing Records' end from (select count(*) row_count from DDD.TOTAL_RCORDS)'
,'select case when row_count > 1 then 'Attached are Missing Records' else 'No Missing Records' end from (select count(*) row_count from DDD.TOTAL_RCORDS)'
,NULL
,'Missing_Records.csv'
,null
,SYSDATE
,'TEST'
,SYSDATE
,'TEST'
,'SELECT 'Y' FROM DUAL'
,'select case when row_count > 1 then 'Y' else 'N' end from (select count(*) row_count from DDD.TOTAL_RCORDS)'
);
插入中有15列,但仅选择13个值。 您似乎缺少附件名称和记录计数限制的值 编辑。您需要在要插入的查询内将“”加倍
,'select case when row_count > 1
then ''Attached are Missing Records''
else ''No Missing Records''
end
from (select count() row_count from DDD.TOTAL_RCORDS)'
也
等等。您使用的是哪一个数据库对,我丢失了其中的两个,但即使更正了,我仍然面临同样的问题。然后发布您更新的问题奇怪的语法颜色是一个非常明显的迹象,表明您混淆了字符串和语句。您有一个字符串
“行计数>1时选择大小写,然后”
后跟无效语句TEST:Missing Records
。您的编辑器的语法着色可能已经警告过您使用oracle SQl developer的ISRINI、iam
,'SELECT ''Y'' FROM DUAL'