Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1227773
  • 博文数量: 788
  • 博客积分: 4000
  • 博客等级: 上校
  • 技术积分: 7005
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-19 15:52
文章存档

2017年(81)

2011年(1)

2009年(369)

2008年(337)

分类:

2008-10-20 10:36:23



使用ADO组件连接SQL数据库后,查询的到的结果(数值型)和在服务器端直接使用MSSQL工具查询的结果不一样???  
  比如字段1在服务器查询出来是100.123,使用ADO查询出来会变成99.23  
   
  是不是ADO的connection设置有问题。我使用的是默认设置。。

1、升级ADO看看  
  2、确定你的SQL和查询分析器的一模一样吗?

SQL是一样的  
   
  ADO是xp2自带的。   开发环境是delphi7

应该不会这么大的误差,100.123   <-->   99.23   ???  
  显然有点不对劲,比如,显示的是同一条记录吗?

差的太离谱....  
 

是。连日期型的数值都会改变。。  
  差在哪里。

日期型会变是正常的,两个对起始的日期定义的不一样,大概差2天吧  
   
  数值型变的这么厉害,就有问题了。

可是在服务器端查询正常。  
   
  我查看时间,发现都是相差几秒钟。  
   
  在企业管理器中查看数值为:17:58:06,  
  在Delphi中看到为17:58:00。  
   
  数据库比较大,大概有2G。  
   
  开发的时候使用会出现有的数值变成0。

能有人解释这个问题吗/?

一般情况下不会碰到这种问题的,所以只能你自己进行调试。  
  1)跟踪Sql语句,然后把跟踪的Sql语句在查询分析器上执行,看结果的异同;  
  2)建议增加一台机器,把数据库和程序换到另一台机器上测试,或者两台机器进行交叉测试。  
 

这是开玩笑么  
  肯定是sql语句的问题

闹鬼了?

SQL语句正常。  
  在两边用同一个语句。

1在服务器查询出来是100.123,使用ADO查询出来会变成99.23  
  ---------------------------------  
   
  碰到过相似的情况,   不过偶是在多层中....  
  单层还没有碰到过....  
   
 

to   hydonlee(青山情)    
   
  那你是怎么解决这个问题的??  
 

偶原来取得数据是通过   clientDataSet1.Data   =   appServer.GetData...  
  发现有这个问题后,   就通过XML的方式传数据过来...就好了.  
   
  数据从服务端传到客户端.



[新闻]硅谷VC过冬:屯现金 广节流 慎投资
博客园首页 社区 新闻频道 小组 博问 网摘 闪存
阅读(604) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~