JDBC ドライバーの JDBC 4.2 への準拠

JDBC ドライバーのダウンロード

注意

Microsoft JDBC Driver 4.2 for SQL Server より前のバージョンのドライバーは、Java Database Connectivity API 4.0 仕様に準拠しています。 このセクションは、4.2 リリースより前のバージョンには適用されません。

Java Database Connectivity API 4.2 仕様は Microsoft JDBC Driver 4.2 for SQL Server によってサポートされ、以下の API メソッドが実装されています。

SQLServerStatement クラス

新しいメソッド 説明 注目に値する実装
long[] executeLargeBatch() バッチを実行します。返される更新数は long 型が可能です。 Java.sql.Statement インターフェイスの説明に従って実装されています。 詳細については、java.sql.Statement に関するページを参照してください。
long executeLargeUpdate(String sql)

long executeLargeUpdate(String sql, int autoGeneratedKeys)

long executeLargeUpdate(String sql, int[] columnIndexes)

executeLargeUpdate(String sql, String[] columnNames)
DML/DDL ステートメントを実行します。返される更新数は long 型が可能です。 long 型の更新数をサポートする 4 つの新しい (オーバーロードされた) メソッドがあります。 Java.sql.Statement インターフェイスの説明に従って実装されています。 詳細については、java.sql.Statement に関するページを参照してください。
long getLargeMaxRows() ResultSet に含めることができる行の最大数を long 型の値として取得します。 SQL Server は、最大行数として整数の制限値のみをサポートしています。 詳細については、java.sql.Statement に関するページを参照してください。
long getLargeUpdateCount() 現在の結果を long 型の更新数として取得します。 SQL Server は、最大行数として整数の制限値のみをサポートしています。 詳細については、java.sql.Statement に関するページを参照してください。
void setLargeMaxRows(long max) ResultSet に含めることができる行の最大数を long 型の値として設定します。 SQL Server は、最大行数として整数の制限値のみをサポートしています。 パラメーターとして最大の整数値より大きいサイズを渡すと、このメソッドは、非サポート例外をスローします。 詳細については、java.sql.Statement に関するページを参照してください。

SQLServerCallableStatement クラス

新しいメソッド 説明 注目に値する実装
void registerOutParameter(int parameterIndex, SQLType sqlType)

void registerOutParameter(int parameterIndex, SQLType sqlType, int scale)

void registerOutParameter(int parameterIndex, SQLType sqlType, String typeName)

void registerOutParameter(String parameterName, SQLType sqlType)

void registerOutParameter(String parameterName, SQLType sqlType, int scale)

registerOutParameter(String parameterName, SQLType sqlType, String typeName)
OUT パラメーターを登録します。 新しい SQLType インターフェイスをサポートする 6 つの新しい (オーバーロードされた) メソッドがあります。 java.sql.CallableStatement インターフェイスの説明に従って実装されています。 詳細については、java.sql.CallableStatementに関するページを参照してください。
void setObject(String parameterName, Object x, SQLType targetSqlType)

void setObject(String parameterName, Object x, SQLType targetSqlType, int scaleOrLength)
パラメーターの値を、指定したオブジェクトで設定します。 新しい SQLType インターフェイスをサポートする 2 つの新しい (オーバーロードされた) メソッドがあります java.sql.CallableStatement インターフェイスの説明に従って実装されています。 詳細については、java.sql.CallableStatementに関するページを参照してください。

SQLServerPreparedStatement クラス

新しいメソッド 説明 注目に値する実装
long executeLargeUpdate() DML/DDL ステートメントを実行し、long 型の更新数を返します。 java.sql.PreparedStatement インターフェイスの説明に従って実装されています。 詳細については、java.sql.PreparedStatementに関するページをご覧ください。
void setObject(int parameterIndex, Object x, SQLType targetSqlType)

void setObject(int parameterIndex, Object x, SQLType targetSqlType, int scaleOrLength)
パラメーターの値を、指定したオブジェクトで設定します。 新しい SQLType インターフェイスをサポートする 2 つの新しい (オーバーロードされた) メソッドがあります。 java.sql.PreparedStatement インターフェイスの説明に従って実装されています。 詳細については、java.sql.PreparedStatementに関するページをご覧ください。

SQLServerDatabaseMetaData クラス

新しいメソッド 説明 注目に値する実装
long getMaxLogicalLobSize() このデータベースで LOB の論理サイズとして許容される最大バイト数を取得します。 SQL Server の場合、この値は 2^31-1 です。 詳細については、java.sql.DatabaseMetaData に関するページをご覧ください。
boolean supportsRefCursors() このデータベースが REF CURSOR をサポートするかどうかを取得します。 SQL Server では REF CURSOR がサポートされていないため、false を返します。 詳細については、java.sql.DatabaseMetaData に関するページをご覧ください。

SQLServerResultSet クラス

新しいメソッド 説明 注目に値する実装
指定された列を Object 値で更新します。 新しい SQLType インターフェイスをサポートする 4 つの新しい (オーバーロードされた) メソッドがあります。 java.sql.ResultSet インターフェイスの説明に従って実装されています。 詳細については、java.sql.ResultSet に関するページをご覧ください。

Java Database Connectivity API 4.2 仕様は Microsoft JDBC Driver 4.2 for SQL Server によってサポートされ、以下のようにデータ型がマッピングされています。

新しいデータ型のマッピング 説明
Java 8 の新しい Java クラス:

LocalDate/LocalTime/LocalDateTime

OffsetTime/OffsetDateTime

新しい JDBC の型:

TIME_WITH_TIMEZONE

TIMESTAMP_WITH_TIMEZONE

REF_CURSOR
SQL Server では、REF_CURSOR はサポートされていません。 この型を使用すると、ドライバーは SQLFeatureNotSupportedException 例外をスローします。 その他のすべての新しい Java 型および JDBC 型のマッピングは、JDBC 4.2 仕様で指定されているとおりにサポートされます。