Autonomous PL/SQL Blocks (151)
You can call autonomous transactions from within a PL/SQL block. Use the pragma
AUTONOMOUS_TRANSACTION. A pragma is a compiler directive. You can declare the
following kinds of PL/SQL blocks to be autonomous:
■ Stored procedure or function
■ Local procedure or function
■ Package
■ Type method
■ Top-level anonymous block
When an autonomous PL/SQL block is entered, the transaction context of the caller is
suspended. This operation ensures that SQL operations performed in this block (or
other blocks called from it) have no dependence or effect on the state of the caller’s
transaction context.
When an autonomous block invokes another autonomous block or itself, the called
block does not share any transaction context with the calling block. However, when an
autonomous block invokes a non-autonomous block (that is, one that is not declared to
be autonomous), the called block inherits the transaction context of the calling
autonomous block.
自治事務pl/sql塊
1. 在pl/sql塊中可以使用pragma(編譯器指令) AUTONOMOUS_TRANSACTION 來呼叫自治事務
2. 以下型別的pl/sql塊可為自治事務 : 儲存過程或者函式(包括本地) , 包 , 型別方法 , 頂級匿名塊
3. 當一個自治的塊程式結構開始執行時,呼叫者的事務上下文環境就被掛起.這保證了自治事務塊
(或由此自治事務塊呼叫的其他結構)內的 SQL 操作與呼叫者的事務上下文環境相獨立
4. 當一個自治事務塊呼叫其他自治事務塊或其自身時,被呼叫的不會與呼叫者共享任何事務上下文環境.
但當一個自治事務塊呼叫一個非自治事務塊時,被呼叫的程式結構將繼承呼叫者的事務上下文環境.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10599713/viewspace-980975/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- PL/SQL 宣告SQL
- Oracle PL/SQLOracleSQL
- pl/sql to_dateSQL
- PL/SQL 運算子SQL
- PL/SQL 條件SQL
- PL/SQL 迴圈SQL
- PL/SQL 遊標SQL
- Oracle PL/SQL塊簡介OracleSQL
- ultraedit高亮顯示pl/sqlSQL
- Oracle 的PL/SQL語言使用OracleSQL
- PL/SQL 條件控制語句SQL
- PL/SQL程式設計急速上手SQL程式設計
- [20240607]PL/SQL中sql語句的註解.txtSQL
- 使用profiler測試Oracle PL/SQL效能OracleSQL
- Oralce之PL/SQL程式設計(遊標)SQL程式設計
- OCP 複習筆記之PL/SQL (1)筆記SQL
- Oracle PL/SQL程式碼中的註釋OracleSQL
- PL/SQL第二章--基本語法SQL
- PL/SQL第三章--游標SQL
- OCP 複習筆記之PL/SQL (3)筆記SQL
- 6.4. PL/SQL語法——6.4.7. 集合SQL
- pl/sql developer的一個小問題SQLDeveloper
- OCP 複習筆記之PL/SQL (2)筆記SQL
- OCP 複習筆記之PL/SQL (4)筆記SQL
- OCP 複習筆記之PL/SQL (5)筆記SQL
- ORA-06544:PL/SQL:internal error,arguments:[56319]SQLError
- Terraform 系列-使用Dynamic Blocks對Blocks進行迭代ORMBloC
- Oracl資料庫+PL/SQL安裝與配置資料庫SQL
- PL/SQL Developer連線到Oracle 12cSQLDeveloperOracle
- openGauss關於PL/SQL匿名塊呼叫測試SQL
- 【OracleEBS】 在PL/SQL中呼叫Oracle ERP請求OracleSQL
- 6.4. PL/SQL語法——6.4.6. 遊標SQL
- 如何在PL/SQL中讀寫檔案(轉)SQL
- 「Oracle」客戶端 PL/SQL DEVELOPER 安裝使用Oracle客戶端SQLDeveloper
- 【TUNE_ORACLE】列出LOOP套LOOP的PL/SQL程式碼SQL參考OracleOOPSQL
- PL/SQL 連線 Oralce 提示 Could not initialize oci.dllSQL
- PL/SQL Developer下載地址和漢化包地址SQLDeveloper
- Oracle vs PostgreSQL Develop(23) - PL(pg)sql(引數宣告)OracleSQLdev
- [20201111]PL SQL function 和一致性.txtSQLFunction