17.9.1 JDBC4.3 APIでの追加機能
JDBC4.3 APIで追加された機能のうち,サポートする機能とドライバを次の表に示します。
機能 |
サポートするドライバ |
|
---|---|---|
JDBC2.0 JDBC4.0 |
JDBC4.3 |
|
try-with-resource文 |
× |
○ |
メタデータの追加 |
× |
○ |
スキーマ指定 |
× |
○ |
ステートメント自動クローズ |
× |
○ |
大きい更新カウント(2147483647) |
× |
○ |
SQL識別子判定 |
× |
○ |
- (凡例)
-
○:サポートされます。
×:サポートされません。
- 〈この項の構成〉
(1) try-with-resource文
Connectionインタフェース,ResultSetインタフェース,及びStatementインタフェースでtry-with-resource文が使用できるようになりました。
(2) メタデータの追加
擬似列,自動生成キーの返却有無,LOBの最大論理サイズ,REF CURSORのサポート有無,及びShardingサポート有無を返すメソッドがDatabaseMetaDataインタフェースに追加されました。これらのメソッドについてはDatabeseMetaDataインタフェースのメソッド「getPseudoColumns(String catalog, String schemaPattern, String tableNamePattern, String columnNamePattern)」,「generatedKeyAlwaysReturned()」,「getMaxLogicalLobSize()」,「supportsRefCursors()」,及び「supportsSharding()」を参照してください。
(3) スキーマ指定
Connectionインタフェースにスキーマ(デフォルトの認可識別子)を設定するメソッドが追加されました。これらのメソッドについてはConnectionインタフェースのメソッド「setSchema(String schema)」及び「getSchema()」を参照してください。
(4) ステートメント自動クローズ
Statementインタフェースに,ResultSetオブジェクトクローズ時にStatementオブジェクトを自動でクローズするメソッドが追加されました。これらのメソッドについてはStatementインタフェースの「closeOnCompletion()」及び「isCloseOnCompletion()」を参照してください。
(5) 大きい更新カウント
更新系SQL実行時に更新行数が2147483647を超える場合のメソッドが追加されました。これらのメソッドについてはStatementインタフェースの「executeLargeBatch()」,「executeLargeUpdate(String sql)」,「setLargeMaxRows(long max)」,「getLargeMaxRows()」,「getLargeUpdateCount()」,及びPreparedStatementインタフェースの「executeLargeUpdate()」を参照してください。
(6) SQL識別子判定
StatementインタフェースにSQL識別子(文字列定数表記,各国文字列定数表記,名前の指定)を判断,返却するメソッドが追加されました。これらのメソッドについてはStatementインタフェースの「enquoteLiteral(String val)」,「enquoteIdentifier(String identifier, boolean alwaysQuote)」,「isSimpleIdentifier(String identifier)」,「enquoteNCharLiteral(String val)」を参照してください。