PSQL JDBC ドライバーの概要
PSQL の JDBC 開発サポートの概要
以下のトピックでは、PSQL JDBC インターフェイスについて説明します。
PSQL JDBC サポート
JDBC は、Java プログラマが Java を使用してデータベース アプリケーションやインターネット アプリケーションを開発するために使用できる標準 API です。これは、Java プログラミング言語で SQL ベースのデータベース アプリケーションを開発するためのインターフェイスで構成されています。JDBC インターフェイスは、Java Developer Kit の一部として含まれています。
JDBC は Java の ODBC に相当するものであり、ODBC データベースとリレーショナル データベースの大きな影響を受けます。
JDBC API の詳細については、Oracle の Web サイトを参照してください。
JDBC の条件
PSQL JDBC ドライバーは PSQL と共に動作します。サーバー、Vx Server、またはワークグループ エンジンを使用することができます。
JDBC の機能
以下は、PSQL JDBC ドライバーの機能についての概略です。
•100% Java 対応
•JDBC 4 対応、タイプ 4 ドライバー。JDBC 2 ドライバーを使用するアプリケーションにも対応しています。
•スレッド セーフ オペレーションをサポートします。
•READ_COMMITTED、SERIALIZABLE などの PSQL エンジンがサポートするトランザクション分離レベルをサポートします。
•ネットワーク アクセスを減らすために結果セットのキャッシュ登録を行います。
•longvarbinary データ型(2 GB まで)でバイナリ データをサポートします。
•longvarchar および nlongvarchar データ型(2 GB まで)で long char 型データをサポートします。
•パラメーターを持つストアド プロシージャをサポートします。
•セキュリティを提供するために接続文字列を暗号化します。
•接続文字列パラメーターを使用して、指定されたコード ページでデータベースから読み取る際のコード ページのフィルターリングをサポートします。
•結果セットのカーソル CONCUR_UPDATABLE、TYPE_SCROLL_INSENSITIVE、および TYPE_SCROLL_SENSITIVE をサポートします。
•DataSource インターフェイスをサポートします。JNDI に PSQL データベースを登録し、PSQL 固有のドライバー機能からアプリケーションを保護します。
•ParameterMetaData インターフェイスをサポートします。
PSQL JDBC データ型
PSQL JDBC データ型を指定するのに使用される数値識別子は、場合によっては、JDBC 標準の識別子と異なることがあります。次の表は、完全な一覧です。
データ型 | 識別子 |
---|
BFLOAT4 | 7 |
BFLOAT8 | 8 |
BIGINT | -5 |
BINARY | -2 |
BIT | -7 |
CHAR | 1 |
CURRENCY | 3 |
DATE | 9 |
DATETIME | 11 |
DECIMAL | 3 |
DOUBLE | 8 |
IDENTITY | 4 |
INTEGER | 4 |
LONGVARBINARY | -4 |
LONGVARCHAR | -1 |
NCHAR | -8 |
NLONGVARCHAR | -10 |
NUMERIC | 2 |
NVARCHAR | -9 |
REAL | 7 |
SMALLIDENTITY | 5 |
SMALLINT | 5 |
TIME | 10 |
TIMESTAMP | 11 |
TINYINT | -6 |
UBIGINT | -5 |
UINTEGER | 4 |
USMALLINT | 5 |
UTINYINT | -6 |
VARCHAR | 12 |
PSQLJDBC ドライバーの制限
サポートされない API
JDBC ドライバーは次の JDBC インターフェイスをサポートしません。
•Array
•Blob
•Clob
•NClob
•Ref
•RowId
•SQLXML
•Struct
•SQLData
•SQLInput
•SQLOutput
•URL
これらがサポートされないのは、PSQL エンジンがその基盤にある SQL 3 データ型を現在サポートしていないためです。
ドライバーの制限
•"out" パラメーターで long データ型を使用できません。
•実際の最小フェッチサイズは 2 行です。
•結合で更新可能な結果セットを持つことはできません。
•"group by" で更新可能な結果セットを持つことはできません。
•JDBC ドライバーは、データを UnicodeBig または UnicodeLittle 形式で保存しません。
•サポートされる保持機能は HOLD_CURSORS_OVER_COMMIT のみです。
•プールされたステートメントはサポートされていません。
•名前付きパラメーターはサポートされていません。