【问题标题】:"Missing comma" error while inserting clob value in table在表中插入 clob 值时出现“缺少逗号”错误
【发布时间】:2017-01-23 11:27:30
【问题描述】:
CREATE TABLE fcc_consistency_check
(
    cons_id         VARCHAR2(30),
    cons_desc       VARCHAR2(4000),
    cons_query      CLOB,
    module_id       VARCHAR2(2),
    main_tab_name   VARCHAR2(30),
    hist_tab_name   VARCHAR2(30),
    col_name        VARCHAR2(4000),
    col_type        VARCHAR2(4000),
    check_reqd      VARCHAR2(1)
);


INSERT INTO fcc_consistency_check
VALUES ('CHK_BC003','Missing records in contract_event_log','select a.CONTRACT_REF_NO ,a.Latest_Event_Seq_No,                                                 
 c.PREV_WORKING_DAY from cstb_contract A ,sttm_dates c
 where module_code = 'BC'
 and c.Branch_code='000'
 and not exists (select * from cstb_contract_event_log B
 where a.contract_ref_no = b.contract_ref_no 
 and latest_event_seq_no = event_seq_no);',
 'BC','BCCC_EVENT_LOG_MISREC','BCCC_EVENT_LOG_MISREC_HISTORY','CONTRACT_REF_NO,LATEST_EVENT_SEQ_NO,EOD_DATE','VARCHAR2(16),NUMBER,DATE','Y');

无法插入 clob 值,我收到此错误

ORA-00917:缺少逗号

当我尝试插入单个列值时,我发现,cons_query 列出现错误。

【问题讨论】:

  • 请添加mysql给出的确切错误信息。
  • ORA-00917:缺少逗号;这是我得到的错误。我正在使用 11g pl/sql 开发者。
  • 您说您使用的是 11g pl/sql 开发人员。你为什么在这个问题中包含 [mysql] 标签?

标签: mysql oracle11g plsqldeveloper


【解决方案1】:

问题是您的查询中有引号:

'select a.CONTRACT_REF_NO
 ,a.Latest_Event_Seq_No,
 c.PREV_WORKING_DAY from cstb_contract A ,sttm_dates
 where module_code = 'BC'
^string starst here:
                     ^ends here, there's a commma missing

但是,实际问题不是缺少逗号,而是您忘记转义的引号。例如,您需要编写module_code = ''BC'' 来转义这些引号(您在其中还有其他引号,而不仅仅是'BC')。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-21
    • 2016-01-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多