CREATE PROCEDURE æ–‡

CREATE PROCEDUREæ–‡ã?«ã‚ˆã‚ŠCALL PROCEDUREã?§å®Ÿè¡Œå?¯èƒ½ã?ªã€?Javaã?®æ‰‹ç¶šã??を作æˆ?ã?§ã??ã?¾ã?™ã€‚

手続ã??やデータベースã?®æ‰€æœ‰è€…ã?¯è‡ªå‹•çš„ã?«EXECUTE権é™?ã‚’æŒ?ã?¤ã‚‚ã?®ã?¨ã?•れã€?ã?¾ã?Ÿä»–ã?®ãƒ¦ãƒ¼ã‚¶ã?«æ¨©é™?を付与ã?™ã‚‹ã?“ã?¨ã?Œã?§ã??ã?¾ã?™ã€‚EXECUTE権é™?ã?¯æ‰‹ç¶šã??やデータベースã?®æ‰€æœ‰è€…ã?‹ã‚‰å‰¥å¥ªã?§ã??ã?¾ã?›ã‚“。

æ§‹æ–‡

CREATE PROCEDURE 手続å?? ( [ 手続ã??ã?®å¼•æ•°
   [, 手続ã??ã?®å¼•æ•°] ] * )
[ 手続ã??ã?®è¦?ç´  ] *

手続å??

[ スキーマå??. ] SQL92識別å­?

スキーマå??ã?ŒæŒ‡å®šã?•れã?ªã?‹ã?£ã?Ÿå ´å?ˆã€?ç?¾åœ¨ã?®ã‚¹ã‚­ãƒ¼ãƒžã?Œæ—¢å®šã?¨ã?ªã‚Šã?¾ã?™ã€‚手続å??ã‚’é™?定ã?™ã‚‹å ´å?ˆã€?スキーマå??ã?¯SYSã?§å§‹ã?¾ã?£ã?¦ã?¯ã?ªã‚Šã?¾ã?›ã‚“。

手続�引数

[ { IN | OUT | INOUT } ] [ 引数å?? ] データ型

引数ã?®æ—¢å®šã?¯INã?§ã?™ã€‚引数å??ã?¯æ‰‹ç¶šã?«ã?¦ä¸€æ„?ã?§ã?‚ã‚‹å¿…è¦?ã?Œã?‚りã?¾ã?™ã€‚

データ型�構文�データ型�記述�れ����。

注: BLOBã€?CLOBã€?LONG VARCHARã€?LONG VARCHAR FOR BIT DATAã‚„XMLã?®ã‚ˆã?†ã?ªãƒ‡ãƒ¼ã‚¿åž‹ã?¯CREATE PROCEDUREæ–‡ã?«ã?¦å¼•æ•°ã?¨å®šç¾©ã?§ã??ã?¾ã?›ã‚“。

手続��素

 { 
| [ DYNAMIC ] RESULT SETS INTEGER
| LANGUAGE { JAVA }
| EXTERNAL NAME string
| PARAMETER STYLE JAVA
| { NO SQL | MODIFIES SQL DATA | CONTAINS SQL | READS SQL DATA }
 }

DYNAMIC RESULT SETS 数値

手続�見�もられる�果�上�を与���。既定��果無�(0)��。

LANGUAGE

JAVA- 手続�Java�クラス��るpublic static�メソッド���呼�れ��。

EXTERNAL NAME 文字列

文字列 ã?«ã‚ˆã‚Šæ‰‹ç¶šã?Œå®Ÿæ–½ã?•れã?Ÿã?¨ã??ã?®Javaã?®ãƒ¡ã‚½ãƒƒãƒ‰ã?Œè¨˜è¿°ã?•れã?¾ã?™ã€‚ã?“れã?¯æ¬¡ã?®æ›¸å¼?ã?¨ã?ªã‚Šã?¾ã?™ã€‚
クラスå??.メソッドå??
ã?“ã?®å??å‰?ã?«ã?¯ç©ºç™½ã?Œã?‚ã?£ã?¦ã?¯ã?ªã‚Šã?¾ã?›ã‚“。

PARAMETER STYLE

JAVA - 手続�Java�SQLルー�ン�仕様�沿���値渡��より引数を扱���。INOUT�よ�OUT�引数�値を呼�出���戻�るよ����素を一������列�より渡�れ��。�果�Java�メソッド�java.sql.ResultSet[]�型�追加�れ��唯一���素を��パラメータ�より呼�出���戻�れ��。

Derby �長�列�型(例��Long Varchar, BLOB等�����。)をサ�ート���ん。 も��れら�長�列�型����一�を使��例外�発生���。

NO SQL, CONTAINS SQL, READS SQL DATA, MODIFIES SQL DATA

手続�SQL文を発行�る�������る�ら���よ��SQL文を発行�る�を表���。

CONTAINS SQL
読ã?¿è¾¼ã?¿ã‚‚変更も行ã‚?ã?ªã?„SQL文を手続ã?«æŒ?ã?Ÿã?›ã‚‹ã?“ã?¨ã?Œã?§ã??ã‚‹ã?“ã?¨ã‚’表ã?—ã?¾ã?™ã€‚サãƒ?ートã?•れã?¦ã?„ã?ªã?„æ–‡ã?§ã?¯ç•°ã?ªã‚‹ã?¨ã?„ã?†ã‚¨ãƒ©ãƒ¼ã?Œç™ºç”Ÿã?—ã?¾ã?™ã€‚ã?“れã?¯æ—¢å®šã?§ã?™ã€‚
NO SQL
手続ã?§ã?¯ã?„ã?‹ã?ªã‚‹SQL文も実行ã?§ã??ã?¾ã?›ã‚“。
READS SQL DATA
変更を行ã‚?ã?ªã?„SQL文を手続ã?«æŒ?ã?Ÿã?›ã‚‹ã?“ã?¨ã?Œã?§ã??ã‚‹ã?“ã?¨ã‚’ã?‚らã‚?ã?—ã?¾ã?™ã€‚サãƒ?ートã?•れã?¦ã?„ã?ªã?„æ–‡ã?§ã?¯ç•°ã?ªã‚‹ã?¨ã?„ã?†ã‚¨ãƒ©ãƒ¼ã?Œç™ºç”Ÿã?—ã?¾ã?™ã€‚
MODIFIES SQL DATA
手続ã?§ã‚µãƒ?ートã?•れã?¦ã?„ã?ªã?„ã€?ã?‚らゆるSQL文を手続ã?‹ã‚‰å®Ÿè¡Œã?§ã??ã‚‹ã?“ã?¨ã‚’表ã?—ã?¾ã?™ã€‚
手続ã?®è¦?ç´ ã?¯ã?©ã?®ã‚ˆã?†ã?ªé †åº?ã?§ã‚‚出ç?¾ã?™ã‚‹ã?“ã?¨ã?Œã?§ã??ã?¾ã?™ã?Œã€?ã??れã?žã‚Œã?®ç¨®é¡žã?®è¦?ç´ ã?¯ä¸€åº¦ã?¾ã?§ã?—ã?‹ç?¾ã‚Œã?¦ã?¯ã?ªã‚Šã?¾ã?›ã‚“。手続ã?«ã?¯ã?“れらã?®å®šç¾©ã?Œç„¡ã?‘れã?°ã?ªã‚Šã?¾ã?›ã‚“。
  • LANGUAGE
  • PARAMETER STYLE
  • EXTERNAL NAME

例

CREATE PROCEDURE SALES.TOTAL_REVENUE(IN S_MONTH INTEGER,
IN S_YEAR INTEGER, OUT TOTAL DECIMAL(10,2))
PARAMETER STYLE JAVA READS SQL DATA LANGUAGE JAVA EXTERNAL NAME 
'com.acme.sales.calculateRevenueByMonth'
関連資料
CREATE FUNCTION æ–‡
CREATE INDEX æ–‡
CREATE SCHEMA æ–‡
CREATE SYNONYM æ–‡
CREATE TABLE æ–‡
CREATE TRIGGER æ–‡
CREATE VIEW æ–‡