代码之家  ›  专栏  ›  技术社区  ›  Rihan Meij

使用net.sourceforge.jtd.jdbc.driver时varchar(max)列出错

  •  3
  • Rihan Meij  · 技术社区  · 15 年前

    我有一个正在运行的MS SQL数据库(MS SQL 2005),并通过net.sourceforge.jtd.jdbc.driver连接到它。

    对于除varchar(max)之外的所有列,查询都可以正常工作。有什么解决这个问题的办法吗?

    我正在使用JDBC驱动程序将数据索引运行到solr实现中。

    (我不控制数据库,因此一等奖的解决方案是我可以在其中调整SQL命令以获得所需的结果)

    谢谢

    2 回复  |  直到 15 年前
        1
  •  9
  •   Rihan Meij    15 年前

    我找到了一个似乎是答案的答案。在为与SQL Server的连接设置驱动程序时,我没有指定useLobs=false。我有点担心这对性能意味着什么,但至少现在它起作用了。

    <dataSource
        driver="net.sourceforge.jtds.jdbc.Driver"
            url="jdbc:jtds:sqlserver://server/database;useLOBs=false" 
        user="user" 
        password="password" />
    
        2
  •  1
  •   Russell H    15 年前

    我在连接到MS SQL 2K3时遇到了同样的问题。useLobs=false不适用于我,但将select更改为 CAST(Name AS varchar(255))'Name' 为我工作。

    推荐文章