我正在尝试在toad中执行以下查询。
UPDATE rd_catg_sync_tables
SET RCST_SYNC_COL2='Insert into ASM_ACE_SERVICE
(SERVICE_ID, SERVICE_NAME, SERVICE_DESC, SERVICE_LEVEL, SERVICE_CODE, SERVICE_CREATED_DATE, SERVICE_TYPE, SERVICE_REF_TBL,ASM_SC_CATGID,ASM_SC_MODIFIED_BY)
Values
(?, '?', '?', ?, '?', TO_DATE('?', 'MM/DD/YYYY HH24:MI:SS'), '?', '?','?','?');'
WHERE RCST_TABLE_NAME=ASM_ACE_SERVICE
但是当我运行它时会询问MI:SS
的值。但它是我需要插入RCST_SYNC_COL2的数据的一部分。请有人帮我如何将这些数据插入该coloumn。
答案 0 :(得分:1)
您需要额外报价。要在SQL中转义单引号,请在一行中使用两个单引号:
update rd_catg_sync_tables
set RCST_SYNC_COL2 = '
Insert into ASM_ACE_SERVICE(SERVICE_ID, SERVICE_NAME, SERVICE_DESC, SERVICE_LEVEL, SERVICE_CODE, SERVICE_CREATED_DATE, SERVICE_TYPE, SERVICE_REF_TBL,ASM_SC_CATGID,ASM_SC_MODIFIED_BY)
Values
(?, ''?'', ''?'', ?, ''?'', TO_DATE(''?'', ''MM/DD/YYYY HH24:MI:SS''), ''?'', ''?'',''?'',''?'');'
where RCST_TABLE_NAME = 'ASM_ACE_SERVICE'
我不知道你将如何执行子查询,但是占位符(?
)周围的单引号和结尾处的分号可能是不必要的。