DELIMITER // DROP PROCEDURE MYPROC // -削除処理 CREATE PROCEDURE MYPROC(IN P1のINT、P2 INOUTのINT、OUT P3のINT ) BEGIN SELECT P1、P2、P3; - 出力P1、P2のP3コンテンツ SET P1 = 10 ; SET P2 = 20である。 SET P3 = 30 ; END // DELIMITER; X1 @ SET = 70; - 変数x1の定義、コンテンツ70 X2 @ SET = 80; - 変数X2の定義、コンテンツ80 CALL MYPROC(@ X1、X2、@、X3 @); SELECT @ X1、X2 @、X3 @;
インポートのjava.sql.Connection; インポートのjava.sql.DriverManager; インポートjava.sql.SQLExceptionという、 インポートjava.sql.CallableStatementのセット、 インポートjava.sql.Typesの、 パブリック クラスProcDemo { // データベースドライバは、MySQL定義 パブリック 静的 ファイナル dbDriver =文字列"また、org.gjt.mm.mysql.Driver" ; // 接続MySQLデータベースのアドレスが定義され 、パブリック 静的 最終的な文字列するDBURL = "JDBC:MySQLの:// localhostを:3306 / MLDN" ; // 接続しているユーザのMySQLデータベースを名前 のパブリック 静的 最終的な文字列DBUSER =「ルート」; // 接続パスワードのMySQLデータベース のパブリック 静的 最終的な "mysqladminは"のString = DBPASS ; 公共の 静的な 無効メイン(文字列の引数は、[])スロー例外{ // スローされるすべての例外 の接続コン= nullをし ; // データベース接続 のCallableStatement cstmt = nullを ; // データベース操作 文字列のSQL = "{MYPROCコール(,, ')}"; // 呼び出し手順 にClass.forName(dbDriver); // ロードドライバ CONN =たDriverManager.getConnection(中DBUSER、DBPASSとするDBURL); cstmt = conn.prepareCall(SQL); cstmt.setInt( 1,70); // 最初のパラメータセットが70である cstmt.setInt(2,80); // セット第2のパラメータは、80 cstmt.registerOutParameter(2 ; Types.INTEGER) cstmt.registerOutParameter( 3 、Types.INTEGER); cstmt.execute(); // 実行 するSystem.out.println(「INOUT戻り値: "+ cstmt.getInt(2 )); のSystem.out.println( " OUT戻り値:「+ cstmt.getInt(3 )); cstmt.close(); はconn.close(); // データベースを閉じます } }。