PL/pgSQL
来自维基百科,自由的百科全书
PL/pgSQL(全名:Procedural Language / PostGres Structured Query Language)是一個可載入的程式語言。為PostgreSQL的ORDBMS所支援的程序式編程語言。它非常類似於Oracle的 PL/ SQL語言。隨著PostgreSQL v9.x的發佈,開始支援一些ISO SQL/PSM的功能,例如可支援過載SQL調用函式與過程[1]。
![]() | 此條目翻譯自其他語言維基百科,需要相關領域的編者協助校對翻譯。 |
PL/pgSQL猶如一個多功能的程式語言,比SQL支援更多的程式語句,包括使用迴圈與其它控制結構的能力。使用PL/ pgSQL語言建立的函式可以調用SQL語法,或者藉由一個 觸發器來執行動作。
PL/pgSQL的建立,是為了能夠比SQL來執行更複雜的操作與運算,同時容易使用,而且能夠受定義於伺服器所信任[2]。
PL/pgSQL是PostgreSQL預設安裝的唯一程式語言,不過許多人都可使用,包括PL/Java、PL/Perl(頁面存檔備份,存於網際網路檔案館)、PL/php、PL/Python(頁面存檔備份,存於網際網路檔案館)、PL/R、PL/Ruby、PL/sh、PL/Tcl(頁面存檔備份,存於網際網路檔案館)與and PL/Lua。 PostgreSQL於剖析器的階段中使用 Bison[3] ,所以很容易移植許多開放原始碼語言,以及進行代碼復用。
與PSM比較
在SQL/PSM語言由ISO標準規定,也激發了Oracle的PL/ SQL與pgPL/ SQL,因此有一些區別。 PSM的主要特性,與來自PL / pgSQL的不同[4]:
- 異常處理程式的子程式(持續處理程式);
- 警告可以類似一個異常來處理;
- 變數宣告應根據SQL查詢結果。
參考資料
外部連結
Wikiwand - on
Seamless Wikipedia browsing. On steroids.