ADO的严重紧急问题,求助各位大虾!!特急,送多分
给客户作了一个程序:
引用 Activex Data Object 2.0 libary
然后定义
Public DConnection As New ADODB.Connection '当前的数据连接
Public TmpRecordset As New ADODB.Recordset ,记录集
然后连接数据库
Private Sub Form_Load()
Dim a As String
a = "dsn=Finance;uid=Finance;pwd=finance"
DConnection.Open a
End Sub
//以上没有问题
当在按钮事件里执行下列程序的时候有问题了
Set TmpRecordset = DConnection.Execute("select isnull(sum(session_debit_money),0) from t_ta where account_num = 3 and session = '200201' and c_subject ='405001006'", 1, adCmdText)
If TmpRecordset.EOF Then
TmpRecordset.MoveFirst
MsgBox CStr(TmpRecordset.Fields(0)), , "TmpRecordset.Fields(0)1"
ResultString(1) = TmpRecordset.Fields(0)
end if
这时候,本来这个值在数据库理是1200 但取出来的却是12 ,我把库里记录改称 12000或者21000什么的后面有0的数字,取出来的结果都是把零去掉后的结果。如果没有0为结尾那么弹出来对话框的结果就是队的。而且奇怪的是,在我们公司这里测试是对的,就是不会把零去掉,但到了客户那里,连他们的数据库(sybase system 11,我们的数据库是一样的,但设置不太一样而已)就出现上面问题,因为这是作财务报表的,凡是后面带零的就去掉,客户反映,‘你们的报表系统怎么都是少10,100,1000倍的呢?“我现在也不知道怎么弄了,我对vb也不太熟悉,请各位大虾给于指点,我不胜感激!!