使用append提示進行insert叫做直接路徑加載插入。
【特點】
1、使用這種提示因爲系統不去查找freelist鏈表中的空閒塊,直接在高水標記位以上插入數據,因此速度比較快。但若是對於經常delete的表,浪費磁盤空間太大!
2、它不記錄日誌,因此一旦插入的數據在沒有保存回磁盤的時候發生掉電之類的狀況插入的數據不能重做。
3、/*+append*/後,需要馬上提交commit ,否則會影響下一次修改失敗(insert,update,delete)
在Oracle Database 10g Enterprise Edition Release 10.2.0.1.0中,如果插入操作的語法是
insert
/*+append*/ into XXX values(XXX); --加行級鎖
那麼系統加的是row exclusive鎖,也就是正常insert所加的行級鎖,但是如果插入操作的語法是
insert /*+append*/ into XXX select XXX from XXX;--加表級鎖
那麼系統加的是exclusive鎖,相當於表級鎖,加表級鎖意味着在本會話沒有commit的時候其他任何會話都不能再進行insert,update,delete操作
原文:http://blog.itpub.net/26838108/viewspace-721266/