我有一个看起来或多或少类似于下面的 sql -
宣布
some_Date 日期;
开始
从 dual 中选择 sysdate 到 some_Date ;
合并成
(SELECT cola, colb, colc FROM TableA WHERE status='A' AND some_id = 101) P
USING ( select some_Date as cola from dual ) S ON (P.cola=S.cola)
当匹配然后
更新集 P.status = 'D'
当不匹配时
插入
(可乐,colb,colc)
价值观
(xxx,xxx,xxx);
结尾 ;
当我通过直接将 some_date 替换为 sysdate 来运行上述查询时,它执行时没有错误。但是我替换了 using 子句中的 sysdate 并尝试动态使用它,但出现以下错误。我得到一个例外如下 -
错误报告:
ORA-00600: 内部错误代码, 参数: [qcsfbdnp:1], [B1], [], [2], [], [], [], [], [], [], [], []
ORA-06512: 在第 5 行
00600. 00000 - “内部错误代码,参数:[%s], [%s], [%s], [%s], [%s], [%s], [%s], [%s] "
*原因:这是 Oracle 程序的通用内部错误号
例外。这表明一个进程遇到了
特殊情况。
*行动:报告为错误 - 第一个参数是内部错误号
这是oracle中的已知错误吗?什么是替代品?
更新:修正了一个错字!