高手请进~(200)

  • 主题发起人 主题发起人 AsleepAnge
  • 开始时间 开始时间
A

AsleepAnge

Unregistered / Unconfirmed
GUEST, unregistred user!
SQL SERVER 2000 在做查询是服务器报错SELECT DWDJID,XMID,XMMC,Count(*) as SL,Sum(JG * ZK) AS JE,CONVERT(VARCHAR(10),JCSJ,126) JCRQFROM [TT_GR_XXB] WHERE DWDJID IS NOT NULL AND JCSJ IS NOT NULL AND CONVERT(VARCHAR(10),JCSJ,126)=@JCRQ AND FYLX=0 AND JCBZ=1 GROUP BY DWDJID,XMID,XMMC,CONVERT(VARCHAR(10),JCSJ,126)错误提示如下[Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionCheckForData (CheckforData()). 服务器: 消息 11,级别 16,状态 1,行 0 一般性网络错误。请检查网络文档。 连接中断自己跟踪发现,查询结果里面竟然有NULL,但是条件里有 DWJID IS NOT NULL ,DWDJID这个字段是VARCHAR
 
加上 and DWDJID <> '' 试试
 
还有检查网络。把这句语句拿到查询分析器里会报错吗?
 
不能加 <> '' 查询需要的结果是有值和=''的。。就是在分析器里执行报错的
 
AND CONVERT(VARCHAR(10),JCSJ,126)=@JCRQ检查一下。
 
@JCRQ 只是个变量,我在查询时会换成 日期字符串。。。和这个没关系
 
SELECT DWDJID,XMID,XMMC,Count(*) as SL,Sum(JG * ZK) AS JE,CONVERT(VARCHAR(10),JCSJ,126) JCRQFROM [TT_GR_XXB] WHERE DWDJID IS NOT NULL --去掉 AND JCSJ IS NOT NULL --去掉 AND CONVERT(VARCHAR(10),JCSJ,126)=@JCRQ --改成 and jcsj >= now AND FYLX=0 AND JCBZ=1 GROUP BY DWDJID,XMID,XMMC,CONVERT(VARCHAR(10),JCSJ,126)--改为JCSJ,不要转换如果还有错,我觉得不是语句的问题
 
大哥。。你把条件都去掉了。。那这条查询还有什么用?
 
你仔细看看你的条件吧:AND JCSJ IS NOT NULL AND CONVERT(VARCHAR(10),JCSJ,126)=@JCRQ 既然 JCSJ 会有明确的日期那还要 AND JCSJ IS NOT NULL 干什么?是不是多此一举???至于其它的改动只是为了测试有 NULL 值时是否会报你那个错误,如果不报错,你就不应该在SQL命令上折腾了,应该有别的原因。好了,我不会再回了,祝你好运。
 
[Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionCheckForData (CheckforData()). 服务器: 消息 11,级别 16,状态 1,行 0 一般性网络错误。请检查网络文档。 连接中断这表示你的客户端和数据库服务器断开了,不是软件的错,这是不能连接到数据库才报的错,
 

Similar threads

I
回复
0
查看
3K
import
I
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部