存盤程序是一組可以完成特定功能的 SQL 陳述句集, 經編譯后存盤在資料庫中。用戶在執行存盤程序時,需要指定存盤程序的名稱并給出引數(如果存盤程序里包含引數)
存盤程序創建的語法格式如下示例:
CREATE PROCEDURE <proc_name>([<parameter_1>[,…] [,parameter_n]])
[characteristic ...]
BEGIN
<程序定義>
END
引數說明
1、<proc_name>、 <func_name>要創建的存盤程序的名稱。在同一資料庫內,存盤程序
的名稱必須唯一。存盤程序名稱只允許 a~z、 A~Z、 0~9、下劃線,且不能只包含
數字;
2、([<parameter_1>[,...] [,parameter_n]])定義存盤程序的引數,每一個引數的定義格式
是: <引數方向><引數名稱><引數資料型別>;
3、存盤程序的<引數方向>確定引數是輸入、輸出還是輸入輸出,只能取 IN、 OUT、
INOUT 中的一個。函式的<引數方向>只能是輸入 IN;
4、<引數名稱>在同一個存盤程序中必須唯一,只允許 a~z、 A~Z、 0~9、下劃線,且
不能只包含數字;
5、<引數資料型別>指定引數的資料型別;
6、<程序定義>、 <函式定義>是一系列的 SQL 陳述句的組合,其中包含一些資料操作以完
成一定的功能邏輯;
7、定義存盤程序時,存盤程序名后面的括號是必需的,即使沒有任何引數,也不能省
略;GBase 8a MPP Cluster 產品手冊 6 故障管理
8、如果存盤程序、函式中的<程序定義>僅包含一條 SQL 陳述句,則可以省略 BEGIN 和
END,否則,在定義存盤程序時,必須使用 BEGIN...END 結構把相關的 SQL 陳述句
組織在一起形成<程序定義>;
9、存盤程序、函式可以嵌套;
10、type 是 GBase 8a MPP Cluster 支持的資料型別
GBase 8a MPP Cluster 使用 CALL 陳述句呼叫存盤程序,語法格式如下所示:
CALL [database_name.]proc_name([<引數串列>])
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/262245.html
標籤:其他數據庫
上一篇:請教一下real()
