Whoami:5年+金融、政府、医疗领域工作经验的DBACertificate:PGCM、OCP、YCPSkill:Oracle、Mysql、PostgreSQL、国产数据库Platform:CSDN、墨天轮、公众号(呆呆的私房菜)
客户反馈执行SQL之后,数据库出现 ORA-600 [kxtotolc_strdef2], [1] 错误,数据库版本为19.25.0,出现报错如下:

CREATE TABLE t1 (c1 CLOB, c2 NUMBER);CREATE OR REPLACE TRIGGER trig1 BEFORE INSERT ON t1 FOR EACH ROWBEGINIF :NEW.c1 = '' thennull;END IF;END;/INSERT ALL INTO t1 (c1, c2) VALUES (NULL, NULL) SELECT * FROM DUAL;*ERROR at line 1:ORA-00600: internal error code, arguments: [kxtotolc_strdef2], [2], [], [], [],[], [], [], [], [], [], []Rediscovery Information:Call Stack will likely include:kxtotolc <- kxtorab <- kxtopre <- inspre0 <- insmtipre0 <- qcsmtifc<- qkadml <- qkadrv <- opitca <- kksFullTypeCheck <- rpiswu2 <- kksLoadChild<- kxsGetRuntimeLock <- kksfbc <- kkspsc0 <- kksParseCursor <- opiosq0 <- kpooprx<- kpoal8 <- opiodr <- ttcpip <- opitsk <- opiino <- opiodr
触发了Oracle Bug 37379354,受影响版本如下:

使用INSERT代替INSERT ALL。
本文内容就到这啦,希望能够给您带来帮助!

文章转载自呆呆的私房菜,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




