在Oracle中,我正在调用以下查询(而不是来自sqlplus)作为安装脚本的一部分:
ALTER TABLE MYTABLE DISABLE CONSTRAINT PFTATTRS_ATTR_FK;
INSERT INTO MYTABLE (PTF_ID, ATTR_ID) VALUES (1, 5);
ALTER TABLE MYTABLE ENABLE CONSTRAINT PFTATTRS_ATTR_FK;
如您所见,我正在将DML(需要COMMIT)与DDL(自动提交)交错。 我的疑问是:我是否需要在每个DDL之前提交DML,或者在我的脚本结束时进行一次大提交是否安全?
答案 0 :(得分:5)
见这里。
http://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:7072180788422
https://community.oracle.com/message/10310617
每个DDL语句都将提交所有以前未提交的DML语句。