我有一個MS SQL數據庫正在運行(MS SQL 2005),並通過net.sourceforge.jtds.jdbc.Driver連接到它。使用net.sourceforge.jtds.jdbc.Driver時varchar(max)列的錯誤
該查詢適用於除varchar(max)之外的所有列。任何想法如何解決這個問題?
我正在使用jdbc驅動程序將數據索引運行到SOLR實現中。
(我不控制數據庫,所以一等獎的解決辦法是在那裏我可以調整的SQL命令來獲得期望的結果)
感謝
我有一個MS SQL數據庫正在運行(MS SQL 2005),並通過net.sourceforge.jtds.jdbc.Driver連接到它。使用net.sourceforge.jtds.jdbc.Driver時varchar(max)列的錯誤
該查詢適用於除varchar(max)之外的所有列。任何想法如何解決這個問題?
我正在使用jdbc驅動程序將數據索引運行到SOLR實現中。
(我不控制數據庫,所以一等獎的解決辦法是在那裏我可以調整的SQL命令來獲得期望的結果)
感謝
我發現什麼看起來是一個答案。在設置連接到SQL服務器的驅動程序時,我沒有指定useLobs = false。我有點擔心這會對性能產生什麼影響,但至少現在它可以工作。
<dataSource
driver="net.sourceforge.jtds.jdbc.Driver"
url="jdbc:jtds:sqlserver://server/database;useLOBs=false"
user="user"
password="password" />
我與連接到MS SQL 2K3有同樣的問題。 useLOBs = false對我不起作用,但將SELECT更改爲CAST(Name AS varchar(255))'Name'
對我有用。
什麼是查詢? –
選擇 \t b.Title \t,永久 \t,主題 \t明文 \t,標籤 \t,轉換(爲nvarchar(50),m.CreationDate,127)作爲MessageCreationDate \t,轉換(爲nvarchar(50) ,m.LastDateUPdated,127),爲MessageLastDateUpdated \t,上b.BlogId = m.BlogId m.messageid 來自博客b(NOLOCK) 內加入消息m(NOLOCK) 其中b.deleted = 0和m.deleted = 0 –