日期:2014-05-18  浏览次数:20459 次

一样语句 T-SQL执行结果和asp里面执行结果不一样
SQL语句
SELECT distinct top 300 [word] FROM [AriDic].[dbo].[lib] where word>='x'
T-SQL执行 正常
显示了所有数据

asp程序里面 用同样的语句
结果只有三行 是 
x
X being the o
X certificate

符合条件的原始数据 word 类型varchar(500)
word
x
x
x
x
x
x
x
x
x
x
x
X
x
X being the o
X certificate
X chromosome
x è maggiore o uguale a y
X e Y sono arrivati a pari merito
X is kind to your skin
X is twice the l
X legs
X marks
X rated
X ray
x ray
X Windows
x x x
x y diagram
X, or
Xanadu
Xanax
xantato
xantato
xanteina
xantelasma
xantene
xantene
xantenico
xantenico
xanthate
xanthein
xanthein
.........

------解决方案--------------------
程序的问题
看看数据库是不是一个库
------解决方案--------------------
你确认这个:

SELECT distinct top 300 [word] FROM [AriDic].[dbo].[lib] where word>='x'

是正确显示的?

我认为是你搞错了,再仔细检查一下.
------解决方案--------------------
必须是程序问题、
------解决方案--------------------
也有可能是你连接错了库.
------解决方案--------------------
要不你就单拉出来做这个功能,看看是什么结果
应该是程序有问题
------解决方案--------------------
探讨

我都检查一天了......... 程序就那么几句呢

------解决方案--------------------
SQL语句
SELECT distinct top 300 [word] FROM [AriDic].[dbo].[lib] where word>='x'
T-SQL执行 正常
显示了所有数据

---------------------

你说的"显示了所有数据"是指重复的都显示了?

------解决方案--------------------
仔细点看看,好好理一理原来的思路。问题在程序了
------解决方案--------------------
你在while循环上面输出一下rs.recordcount 看看
------解决方案--------------------
数据库追踪,没有执行就不是这个数据库,有就拷贝SQL在查询分析器执行。
------解决方案--------------------
应该是 写错了 没注意
------解决方案--------------------
试试取其他列是否正常,如果正常可能是word列数据有问题,确认了的话,把数据导入导出一次试试.
------解决方案--------------------
我也遇到这样子的问题呢
------解决方案--------------------
楼主如何解决的?