我正在编写一个更新触发器,并且正在努力处理更新语句:
声明如下:
UPDATE ARGUS_APP.CMN_REG_REPORTS CARR
SET CARR.DATE_SUBMITTED =
(
SELECT To_Date(M.ACKNOWLEDGMENTHEADER.MESSAGEDATE,'YYYYMMDDHH24MISS') Messagedate
FROM esm_owner.MESSAGES M
WHERE M.ACKNOWLEDGMENTHEADER.MESSAGESENDERIDENTIFIER='PMDA'
)
WHERE CARR.DATE_SUBMITTED =
(
SELECT CARR.DATE_SUBMITTED
FROM esm_owner.safetyreport sr,esm_owner.MESSAGES M,ARGUS_APP.CMN_REG_REPORTS CARR
WHERE sr.report_id=CARR.esm_report_id
AND M.msg_id = sr.msg_id
AND M.ACKNOWLEDGMENTHEADER.MESSAGESENDERIDENTIFIER='PMDA'
)
我每次都得到 ORA:01427。
表结构如下:
我有 3 张桌子
- ARGUS_APP.CMN_REG_REPORTS CARR ......有列 DATE_SUBMITTED(我想更新)和 esm_report_id 与安全报告的 report_id 连接
- ESM_OWNER.SAFETYREPORT SR............具有report_id和MSG_ID列(与MESSAGES表的msg_id连接)
- MESSAGES M .......... 具有 MSG_ID 和 ACKNOWLEDGMENTHEADER.MESSAGESENDERIDENTIFIER 列
请帮我解决这个问题。