GB | BIG5
|
| 首頁 > 數據庫 > 其它 > 正文 |
 |
| PostgreSQL7.0手冊-用戶手冊-10. PL/pgSQL - SQL 過程語言 |
| 編譯:何偉平 laser@zhengmai.com.cn (2001-04-21 21:28:45) |
第十章. PL/pgSQL - SQL 過程語言
概述
描述
例子
PL/pgSQL 是 Postgres 數據庫系統的一個可裝載的過程語言.
這個包最初是 Jan Wieck 寫的.
概述
PL/pgSQL 的設計目標是創建一種可裝載的過程語言,可以
可用創建函數和觸發器過程,
為 SQL 語言增加控制結構,
可以執行復雜的計算,
繼承所有用戶定義類型,函數和操作符,
可以定義為被服務器信任(的語言),
容易使用.
PL/pgSQL 函數第一次被端調用時,PL/pgSQL 的調用控制器分析函數源文本生成二進制指令樹.所生成的字節碼在調用控制器裡是用函數的對象標識來標記的.這樣就保証如果使用 DROP/CREATE 序列修改了函數,不需要建立一個新的數據庫聯接就能令修改生效.
對函數裡用到的所有表達式和 SQL 語句,PL/pgSQL 字節碼解析器使用 SPI 管理器 SPI_prepare() 和 SPI_saveplan() 函數創建一個準備好了的執行規劃.這些動作是在(解析器)第一次處理時完成的,獨立的語句是在 PL/pgSQL 函數裡面處理的.因此,一個帶有條件代碼的有許多語句的需要執行規劃的函數,將只準備和保存那些在整個數據庫聯接周期內真正使用到的規劃.
除了用用戶定義類型的輸入/輸出轉換和計算函數以外,任何可以在 C 語言函數裡定義的東西都可以在 PL/pgSQL 裡使用.我們可以創建復雜的條件計算函數,並隨將之用定義操作符或者用函數索引中.
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
描述
PL/pgSQL 的結構
PL/pgSQL 語言是大小寫不敏感的語言.所有關鍵字和標識都可以混合大小寫使用.
PL/pgSQL 是一種面向塊的語言.一個塊象下面這樣定義
[<
進入【UNIX論壇】
|
|
| 相關文章 |
PostgreSQL7.0手冊-附錄-文檔 (2001-04-21 23:50:44) PostgreSQL7.0手冊-附錄-日期/時間支持-CVS 倉庫 (2001-04-21 23:48:48) PostgreSQL7.0手冊-教程 -73. Postgres SQL 高級特性 (2001-04-21 23:45:36) PostgreSQL7.0手冊-教程 -72. 查詢語言 (2001-04-21 23:44:40) PostgreSQL7.0手冊-教程 -71. 開始 (2001-04-21 23:42:54) PostgreSQL7.0手冊-教程 -70. 體系結構 (2001-04-21 23:41:58) PostgreSQL7.0手冊-教程 -69. SQL (2001-04-21 23:41:23) PostgreSQL7.0手冊-開發者手冊 -68. 分頁文件 (2001-04-21 23:39:22) PostgreSQL7.0手冊-開發者手冊 -67. 端接口 (2001-04-21 23:38:34) PostgreSQL7.0手冊-開發者手冊 -66. gcc 缺省優化 (2001-04-21 23:37:20)
|
===更多相關=== |
|
|
 |
★ 樊強制作 歡迎分享 ★ |