Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 » SQL Anywhere サーバ プログラミング » JDBC サポート » JDBC を使用したデータへのアクセス

 

JDBC からの準備 INSERT 文と DELETE 文の使用

サンプル JDBC アプリケーションがデータベースサーバから呼び出され、準備文を使用して Departments テーブルでローを挿入、削除します。

前提条件

Java Development Kit (JDK) をインストールしている必要があります。

外部プロシージャを作成するには、CREATE PROCEDURE および CREATE EXTERNAL REFERENCE システム権限が必要です。また、修正しているデータベースオブジェクトでの SELECT、DELETE、INSERT 権限も必要です。

 ♦ タスク
  1. Interactive SQL からデータベースに接続します。

  2. JDBCExample クラスがインストールされていることを確認します。

    Java のサンプルクラスをインストールする方法の詳細については、JDBC サンプルの準備を参照してください。

  3. クラスの JDBCExample.Insert メソッドのラッパーとして動作する JDBCInsert という名前のストアドプロシージャを定義します。

    CREATE PROCEDURE JDBCInsert(IN arg1 INTEGER, IN arg2 CHAR(50))
      EXTERNAL NAME 'JDBCExample.Insert(ILjava/lang/String;)V'
      LANGUAGE JAVA;
  4. 次のように JDBCExample.Insert メソッドを呼び出します。

    CALL JDBCInsert( 202, 'Southeastern Sales' );

    Insert メソッドにより InsertDynamic メソッドが呼び出されます。

  5. ローが Departments テーブルに追加されたことを確認します。

    SELECT * FROM Departments;

    サンプルプログラムでは、Departments テーブルの更新された内容をデータベースサーバメッセージウィンドウに表示します。

  6. DeleteDynamic という名前のサンプルクラスには、追加されたばかりのローを削除する同じようなメソッドがあります。

    クラスの JDBCExample.Delete メソッドのラッパーとして動作する JDBCDelete という名前のストアドプロシージャを定義します。

    CREATE PROCEDURE JDBCDelete(IN arg1 INTEGER)
      EXTERNAL NAME 'JDBCExample.Delete(I)V'
      LANGUAGE JAVA;
  7. 次のように JDBCExample.Delete メソッドを呼び出します。

    CALL JDBCDelete( 202 );

    Delete メソッドにより DeleteDynamic メソッドが呼び出されます。

  8. ローが Departments テーブルから削除されたことを確認します。

    SELECT * FROM Departments;

    サンプルプログラムでは、Departments テーブルの更新された内容をデータベースサーバメッセージウィンドウに表示します。

結果

サーバ側 JDBC アプリケーションで準備 SQL 文を使用して、ローがテーブルで挿入、削除されます。

 参照