私は、jtds による SQL サーバーのvarchar(max)およびnvarchar(max)列の型textの誤った報告に関する問題を調査してきました (これらは、およびの推奨される置き換えですntext)。
inet、jtds、ms jdbc データベース ドライバーの間で、一貫性のある唯一の列定義は、
rs = Connection.getMetaData().getColumns(null,null,tableName,columnName);
rs.next();
rs.getInt("SQL_DATA_TYPE");
(ソースなどは上記リンク参照)
varchar(max)すべてのドライバーに対して -1 => を返しますLONGVARCHAR。ただし、nvarchar(max)それらはすべて -10 を返します。これはどのようなタイプで、どのように標準化されていますか?