我们遇到了 JTDS 文档中描述的有关索引扫描(SQL Server 2000 及更高版本)的性能问题,因此不得不将sendStringParametersAsUnicode
参数设置为false
.
这适用于我们 99.9% 的案例,但是,我们有一个应用程序确实依赖于 ntext 字段中的 unicode 数据。我们使用具有 NTEXT 参数的存储过程写入上述表。由于更改了上述设置,我们的 unicode 字符串被翻译为 '?' 字符,这不是特别有用。
我摆弄了各种各样的东西,包括:
setObject(1, unicode_string, Types.NCLOB); //as well as NVARCHAR
stmt.setUnicodeStream(1, new ByteArrayInputStream(unicode_string.getBytes("UTF16")), unicode_string.length());
setNClob(1, unicode_string);
然而,这些都不起作用。有任何想法吗?