Db2データベースへの接続

JSON API は、 JDBC 接続を使用して、 Db2データベースへの接続などのさまざまなデータベース操作を実行します。

データベースを使用するには、DB オブジェクトのインスタンスを取得する必要があります。 このオブジェクトは、Connection JDBC 接続や DataSource、またはデータベース URL、ユーザー名、およびパスワードを使用して初期化することができます。

Java™プログラムの次のコードは、 Db2 データベースへの接続方法を示しています
 //Create a context and a dataSource 
 Context initialContext = new InitialContext(); 
 DataSource dataSource = (DataSource)initialContext.lookup("jdbc/myDB2");
 //The dataSource instance becomes a cache key for metadata for the target database 
 DB db = NoSQLClient.getDB(dataSource);
以下の多重定義メソッドを使用して、DB インスタンスを取得することができます。
  • NoSQLClient.getDB(java.sql.Connection)
    
  • NoSQLClient.getDB(javax.sql.DataSource)
    
  • NoSQLClient.getDB(String, String, String)
    getDB メソッドの 3 番目のインスタンスのストリング引数は、以下の引数を取ります。
    jdbcUrl
    JDBC 接続による接続に使用可能な URL を指定します。
    ユーザー
    データベースへの接続に使用できるユーザー名を指定します。
    パスワード
    パスワードを指定します。
注: この DB インスタンスはスレッド間で共有してはなりません。 スレッドごとに独自の NoSQLClient.getDB() メソッド呼び出しを行う必要があります。
表 1. DB でのトランザクション動作の制御方法
方法 説明
public void startTransaction() 必要に応じて接続を取得し、自動コミットを false に設定します。 接続プールやデータ・ソースが使用されている場合、これにより、以降の commitTransaction() または rollbackTransaction() まで DB が単一接続モードになります。
public void commitTransaction() startTransaction() によって開始されたトランザクションをコミットします。
public void rollbackTransaction() startTransaction() によって開始されたトランザクションをロールバックします。
public void setAutoCommit(boolean autoCommit) Db2サーバーが単一接続モードを使用している場合は、自動コミットを設定します。 このメソッドを DataSource モードで呼び出すとエラーになります。
注: この表に記載されているトランザクションAPIは、fire and forgetモードには適用されません。

トランザクション API を使用しているときは、単一モード接続を取得して、トランザクションを開始すると接続プール・モードが強制的に単一モードに変更される状態を回避します。

エラーが発生した場合、ドキュメントは挿入されません。 これらの API では、すべてのドキュメントが挿入されるか、一切挿入されないかのいずれかです。