Partager via


Compatibilité avec JDBC 4.2 pour le pilote JDBC

Télécharger le pilote JDBC

Notes

Les versions antérieures de Microsoft JDBC Driver 4.2 pour SQL Server sont compatibles avec les spécifications de l'API Java Database Connectivity 4.0. Cette section ne s'applique pas aux versions antérieures à la version 4.2.

La spécification de l'API Java Database Connectivity 4.2 est prise en charge par Microsoft JDBC Driver 4.2 pour SQL Server, avec les méthodes API suivantes.

Classe SQLServerStatement

Nouvelles méthodes Description Implémentation intéressante
long[] executeLargeBatch() Exécute le lot où le nombre de mises à jour retourné peut être de type Long. Implémenté comme décrit dans l'interface java.sql.Statement. Pour plus d’informations, consultez java.sql.Statement.
long executeLargeUpdate(String sql)

long executeLargeUpdate(String sql, int autoGeneratedKeys)

long executeLargeUpdate(String sql, int[] columnIndexes)

executeLargeUpdate(String sql, String[] columnNames)
Exécute une instruction DML/DDL où le nombre de mises à jour retourné peut être de type Long. Il existe 4 nouvelles méthodes (surchargées) pour prendre en charge un nombre de mises à jour de type Long. Implémenté comme décrit dans l'interface java.sql.Statement. Pour plus d’informations, consultez java.sql.Statement.
long getLargeMaxRows() Récupère le nombre maximal de lignes sous la forme d'une valeur Long que ResultSet peut contenir. SQL Server prend uniquement en charge un entier pour la limite du nombre maximal de lignes. Pour plus d’informations, consultez java.sql.Statement.
long getLargeUpdateCount() Récupère le résultat actuel en tant que nombre de mises à jour de type Long. SQL Server prend uniquement en charge un entier pour la limite du nombre maximal de lignes. Pour plus d’informations, consultez java.sql.Statement.
void setLargeMaxRows(long max) Définit le nombre maximal de lignes sous la forme d'une valeur Long que ResultSet peut contenir. SQL Server prend uniquement en charge un entier pour la limite du nombre maximal de lignes. Cette méthode lève une exception non prise en charge si la valeur est supérieure à la taille maximale (entier) passée comme paramètre. Pour plus d’informations, consultez java.sql.Statement.

SQLServerCallableStatement, classe

Nouvelles méthodes Description Implémentation intéressante
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)
Inscrit le paramètre OUT. Il existe 6 nouvelles méthodes (surchargées) pour prendre en charge la nouvelle interface SQLType. Implémenté comme décrit dans l'interface java.sql.CallableStatement. Pour plus d’informations, consultez java.sql.CallableStatement.
void setObject(String parameterName, Object x, SQLType targetSqlType)

void setObject(String parameterName, Object x, SQLType targetSqlType, int scaleOrLength)
Définit la valeur du paramètre avec l'objet donné. Il existe 2 nouvelles méthodes (surchargées) pour prendre en charge la nouvelle interface SQLType Implémenté comme décrit dans l'interface java.sql.CallableStatement. Pour plus d’informations, consultez java.sql.CallableStatement.

SQLServerPreparedStatement, classe

Nouvelles méthodes Description Implémentation intéressante
long executeLargeUpdate() Exécute l'instruction DML/DDL et retourne un nombre de mises à jour de type Long Implémenté comme décrit dans l'interface java.sql.PreparedStatement. Pour plus d’informations, consultez java.sql.PreparedStatement.
void setObject(int parameterIndex, Object x, SQLType targetSqlType)

void setObject(int parameterIndex, Object x, SQLType targetSqlType, int scaleOrLength)
Définit la valeur du paramètre avec l'objet donné. Il existe 2 nouvelles méthodes (surchargées) pour prendre en charge la nouvelle interface SQLType. Implémenté comme décrit dans l'interface java.sql.PreparedStatement. Pour plus d’informations, consultez java.sql.PreparedStatement.

SQLServerDatabaseMetaData, classe

Nouvelles méthodes Description Implémentation intéressante
long getMaxLogicalLobSize() Récupère le nombre maximal d'octets autorisé par cette base de données pour la taille logique d'un objet LOB. Pour SQL Server, cette valeur est 2^31 – 1. Pour plus d’informations, consultez java.sql.DatabaseMetaData.
boolean supportsRefCursors() Récupère les informations indiquant si cette base de données prend en charge REF CURSOR. Retourne la valeur false, car SQL Server ne prend pas en charge REF CURSOR. Pour plus d’informations, consultez java.sql.DatabaseMetaData.

classe SQLServerResultSet

Nouvelles méthodes Description Implémentation intéressante
Met à jour la colonne spécifiée avec une valeur Object. Il existe 4 nouvelles méthodes (surchargées) pour prendre en charge la nouvelle interface SQLType. Implémenté comme décrit dans l'interface java.sql.ResultSet. Pour plus d’informations, consultez java.sql.ResultSet.

La spécification de l'API Java Database Connectivity 4.2 est prise en charge par Microsoft JDBC Driver 4.2 pour SQL Server, avec les mappages de type de données suivants.

Nouveaux mappages de type de données Description
Nouvelles classes Java dans Java 8 :

LocalDate/LocalTime/LocalDateTime

OffsetTime/OffsetDateTime

Nouveaux types JDBC :

TIME_WITH_TIMEZONE

TIMESTAMP_WITH_TIMEZONE

REF_CURSOR
REF_CURSOR n’est pas pris en charge dans SQL Server. Le pilote lève une exception SQLFeatureNotSupportedException si ce type est utilisé. Le pilote prend en charge tous les autres nouveaux mappages de type Java et JDBC comme spécifié dans la spécification JDBC 4.2.