DB2 Version 9.7 for Linux, UNIX, and Windows

Python での IBM データベース・サーバーへの接続

SQL ステートメントを実行してデータの作成、更新、削除、または検索を行うには、その前にデータベースに接続する必要があります。 ibm_db API を使用すると、カタログ式接続またはアンカタログ式接続のいずれかによりデータベースに接続できます。 パフォーマンスを改善するために、持続的な接続を作成することもできます。

始める前に

手順

以下にリストされたいずれかの関数を呼び出して、IBM データベース・サーバーへの接続を確立します。
表 1. ibm_db 接続関数
関数 説明
ibm_db.connect 非持続的な接続を作成します。
ibm_db.pconnect 持続的な接続を作成します。 持続的な接続は、最初の Python スクリプト要求後に開いたままになります。このため、後続の Python 要求で接続を再利用することができます。 後続の Python 接続要求では、同じ資格情報のセットが必要になります。

これらの関数に引数として渡されるデータベース値には、カタログしたデータベース名、または直接 TCP/IP 接続用の完全なデータベース接続ストリングを指定できます。 トランザクションをコミットするタイミング、戻される列名の大/小文字の区別、カーソル・タイプなどを制御するオプションの引数を指定できます。

接続の試行が失敗した場合、ibm_db.conn_error または ibm_db.conn_errormsg 関数を呼び出すことによって診断情報を取得できます。

ibm_db API について詳しくは、http://code.google.com/p/ibm-db/wiki/APIsを参照してください。

例 1: ローカル・データベースまたはカタログしたデータベースに接続します。

import ibm_db
conn = ibm_db.connect("database","username","password")

例 2: アンカタログしたデータベースに接続します。

import ibm_db
ibm_db.connect("DATABASE=name;HOSTNAME=host;PORT=60000;PROTOCOL=TCPIP;UID=username;
                PWD=password;", "", "")

次のタスク

接続の試行が成功した場合は、SQL ステートメントを実行する ibm_db 関数の呼び出し時に接続リソースを使用できます。 次に、SQL ステートメントを準備および実行します。