Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

jTDS signale de manière incorrecte les informations de type de données dans les métadonnées de l'ensemble de résultats (pour les colonnes DATE, signale NVARCHAR)

J'ai trouvé une solution avec la condition

metaData.getColumnType(columnNumber) == 12

si cette condition est satisfaite, exécutez la requête

SELECT System_Type_Id FROM Sys.Columns WHERE Name = [column name] AND Object_Id = (SELECT Object_Id FROM Sys.Tables WHERE Name = [table name])

pour smalldatetime il renverra 58

et pour datetime il retournera 61 .