我正在尝试将几个 MS Access 查询转换为 Oracle。以下是来自 MS Access 的查询之一。
更新 [结果] 内部联接 [主] 开([结果].[LAST_NAME] = [MASTER].[LAST_NAME]) 和([结果].[FIRST_NAME] = [MASTER].[FIRST_NAME]) AND ([RESULT].[DOCUMENT_NUMBER] = [MASTER].[DOCUMENT_NUMBER]) AND ([RESULT].[BATCH_ID] = [MASTER].[LEAD_ID]) SET [MASTER].[CLOSURE_REASON] = "因姓名和证件号码匹配而关闭", [MASTER].[RESULT_ID] = [RESULT].[ID], [MASTER].[RESULT_PID] = [RESULT].[PID] WHERE (([MASTER].[CLOSURE_REASON] 为空) AND ([MASTER].[REC_CODE] = "A1") 和([结果].[EVENT_DATE] = [MASTER].[EVENT_DATE]) AND ([RESULT].[EVENT_TYPE] = "打开") AND([MASTER].[DOCUMENT_NUMBER] 不为空) AND ([MASTER].[DOCUMENT_NUMBER)] "null"));
首先我收到 ORA-01779: cannot modify a column which maps to an non-key-preserved table 错误。我遵循了您网站上的不同示例(包括 MERGE)并修改了我的原始查询。现在,我收到 ORA-30926:无法在源表中获得一组稳定的行错误。
大多数示例仅显示表之间的一个连接,但我必须根据我的要求进行更多连接。
将此查询转换为 Oracle 的任何帮助都会很棒。谢谢!