我有一个Java应用程序,它将所有数据从sybase数据库的一个表复制到另一个数据库(SQL Server 2008)。这工作正常,我正在使用jTDS。现在,我想从包含值“ FLM”和“ NONFLM”的表列中选择数据。我执行查询

select * from table where colName = 'FLM'


在SQL Server中,但没有返回结果。我修剪了此列,但无法获得结果。表中的列具有“ FLM”值。同样的事情与其他列一样,我无法在将整数值复制到字符串列的唯一列中找到空格。我把所有列都当作字符串。

最佳答案

如评论所示,您的栏中的字符过多。因此,要么调整Java导入(String#trim()吗?),要么更新表中的值:

UPDATE table SET colName = SUB(colName,0,LEN(colName))
WHERE ASCII(SUBSTRING(colName,LEN(colName),1)) = 0


谨防!这未经测试,因此在使用前将其包装在事务中。

关于java - 查询无法在SQL Server 2008中使用表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8817700/

10-09 02:56