JDBC 4.2-Kompatibilität für den JDBC-Treiber

JDBC-Treiber herunterladen

Hinweis

Versionen des Microsoft JDBC-Treibers für SQL Server vor Version 4.2 sind mit der Java Database Connectivity API 4.0-Spezifikation kompatibel. Dieser Abschnitt trifft auf Versionen vor der Version 4.2 nicht zu.

Die Java Database Connectivity API 4.2-Spezifikation wird vom Microsoft JDBC-Treiber 4.2 für SQL Server mit den folgenden API-Methoden unterstützt.

SQLServerStatement-Klasse

Neue Methoden BESCHREIBUNG Bemerkenswerte Implementierungsdetails
long[] executeLargeBatch() Führt einen Batch aus, dessen zurückgegebene Aktualisierungsanzahl aus einem Long-Wert bestehen kann. Wird wie unter der java.sql.Statement-Schnittstelle beschrieben implementiert. Weitere Informationen finden Sie unter java.sql.Statement.
long executeLargeUpdate(String sql)

long executeLargeUpdate(String sql, int autoGeneratedKeys)

long executeLargeUpdate(String sql, int[] columnIndexes)

executeLargeUpdate(String sql, String[] columnNames)
Führt eine DML/DDL-Anweisung aus, deren zurückgegebene Aktualisierungsanzahl aus einem Long-Wert bestehen kann. Es sind 4 neue (überladene) Methoden zum Unterstützen einer Aktualisierungsanzahl vom Typ „long“ vorhanden. Wird wie unter der java.sql.Statement-Schnittstelle beschrieben implementiert. Weitere Informationen finden Sie unter java.sql.Statement.
long getLargeMaxRows() Ruft die maximale Zeilenanzahl als long-Wert ab, den das ResultSet enthalten kann. SQL Server unterstützt nur Grenzwerte vom Integertyp für die maximale Zeilenanzahl. Weitere Informationen finden Sie unter java.sql.Statement.
long getLargeUpdateCount() Ruft das aktuelle Ergebnis für die Aktualisierungsanzahl als long-Wert ab. SQL Server unterstützt nur Grenzwerte vom Integertyp für die maximale Zeilenanzahl. Weitere Informationen finden Sie unter java.sql.Statement.
void setLargeMaxRows(long max) Legt die maximale Zeilenanzahl als long-Wert fest, den das ResultSet enthalten kann. SQL Server unterstützt nur Grenzwerte vom Integertyp für die maximale Zeilenanzahl. Diese Methode gibt eine Nicht-unterstützt-Ausnahme aus, wenn ein größerer als der maximal große Integerwert als Parameter übergeben wird. Weitere Informationen finden Sie unter java.sql.Statement.

SQLServerCallableStatement-Klasse

Neue Methoden BESCHREIBUNG Bemerkenswerte Implementierungsdetails
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)
Registriert den OUT-Parameter. Es sind 6 neue (überladene) Methoden zum Unterstützen der neuen SQLType-Schnittstelle vorhanden. Wird wie unter der java.sql.CallableStatement-Schnittstelle beschrieben implementiert. Weitere Informationen finden Sie unter java.sql.CallableStatement.
void setObject(String parameterName, Object x, SQLType targetSqlType)

void setObject(String parameterName, Object x, SQLType targetSqlType, int scaleOrLength)
Legt den Wert des Parameters auf das angegebene Objekt fest. Es sind 2 neue (überladene) Methoden zum Unterstützen der neuen SQLType-Schnittstelle vorhanden. Wird wie unter der java.sql.CallableStatement-Schnittstelle beschrieben implementiert. Weitere Informationen finden Sie unter java.sql.CallableStatement.

SQLServerPreparedStatement-Klasse

Neue Methoden BESCHREIBUNG Bemerkenswerte Implementierungsdetails
long executeLargeUpdate() Führt eine DML/DDL-Anweisung aus und gibt die Aktualisierungsanzahl als long-Wert zurück Wird wie unter der java.sql.PreparedStatement-Schnittstelle beschrieben implementiert. Weitere Informationen finden Sie unter java.sql.PreparedStatement.
void setObject(int parameterIndex, Object x, SQLType targetSqlType)

void setObject(int parameterIndex, Object x, SQLType targetSqlType, int scaleOrLength)
Legt den Wert des Parameters auf das angegebene Objekt fest. Es sind 2 neue (überladene) Methoden zum Unterstützen der neuen SQLType-Schnittstelle vorhanden. Wird wie unter der java.sql.PreparedStatement-Schnittstelle beschrieben implementiert. Weitere Informationen finden Sie unter java.sql.PreparedStatement.

SQLServerDatabaseMetaData-Klasse

Neue Methoden BESCHREIBUNG Bemerkenswerte Implementierungsdetails
long getMaxLogicalLobSize() Ruft die maximale Anzahl Bytes ab, die bei dieser Datenbank für die logische Größe eines LOBs zulässig sind. Für SQL Server beträgt dieser Wert 2^31-1. Weitere Informationen finden Sie unter java.sql.DatabaseMetaData.
boolean supportsRefCursors() Ermittelt durch Abruf, ob diese Datenbank REF CURSOR unterstützt. Diese Methode gibt FALSE zurück, da SQL Server REF CURSOR nicht unterstützt. Weitere Informationen finden Sie unter java.sql.DatabaseMetaData.

SQLServerResultSet-Klasse

Neue Methoden BESCHREIBUNG Bemerkenswerte Implementierungsdetails
Diese Methode aktualisiert die angegebene Spalte mit einem Objektwert. Es sind 4 neue (überladene) Methoden zum Unterstützen der neuen SQLType-Schnittstelle vorhanden. Wird wie unter der java.sql.ResultSet-Schnittstelle beschrieben implementiert. Weitere Informationen finden Sie unter java.sql.ResultSet.

Die Java Database Connectivity API 4.2-Spezifikation wird vom Microsoft JDBC-Treiber 4.2 für SQL Server mit den folgenden Datentypzuordnungen unterstützt.

Neue Datentypzuordnungen BESCHREIBUNG
Neue Java-Klassen in Java 8:

LocalDate/LocalTime/LocalDateTime

OffsetTime/OffsetDateTime

Neue JDBC-Typen:

TIME_WITH_TIMEZONE

TIMESTAMP_WITH_TIMEZONE

REF_CURSOR
REF_CURSOR wird in SQL Server nicht unterstützt. Der Treiber gibt eine SQLFeatureNotSupportedException-Ausnahme aus, wenn dieser Typ verwendet wird. Der Treiber unterstützt alle anderen neuen Java- und JDBC-Typzuordnungen, die in der JDBC 4.2-Spezifikation festgelegt sind.