急,给100分.在GETCHUNK 时报:应用程序在当前操作中使用了错误类型的值.

时间:2021-01-12 08:10:31

我用ADO得到一个大数值.

在句:

iCount = iRS.Fields("DZNR").ActualSize
    iSZ = iRS.Fields("DZNR").GetChunk(iCount)


时如果遇到一个$美元符样的字符时就报错:应用程序在当前操作中使用了错误类型的值.

奇怪的是在有的机子上报错,在有的机子上却不报错,可以正常运行.


程序如下:
Option Explicit

Private iConn As New ADODB.Connection
Private iRS As New ADODB.Recordset
Private iFSO As New FileSystemObject
Dim iTxt  As TextStream
    Dim iCount As Long
    Dim iSZ As String
        
    iConn.ConnectionString = "Provider=OraOLEDB.Oracle.1;Password=tmsnew;Persist Security Info=True;User ID=tms;Data Source=qs"
    iConn.Open
    
    iRS.ActiveConnection = iConn
    iRS.CursorLocation = adUseClient
    
    iRS.Open "select * from dzdz where dzlx = '29'", , adOpenKeyset, adLockBatchOptimistic
    
    iRS.MoveFirst
    If (iRS.BOF And iRS.EOF) Then
        MsgBox ("没有记录")
        Return
    End If
    
    iCount = iRS.Fields("DZNR").ActualSize
    
    
    iSZ = iRS.Fields("DZNR").GetChunk(iCount)
    Set iTxt = iFSO.CreateTextFile("C:\Text.txt", True, False)
    iTxt.Write (iSZ)
    iTxt.Close
    





13 个解决方案

#1


急,给100分.在GetChunk时报:应用程序在当前操作中使用了错误类型的值. 大家帮帮我啊!!真的很需要你们的帮助.

#2


'用Replace将"$"去掉.
iCount = val(Replace(str(iRS.Fields("DZNR").ActualSize),"$",""))

#3


但是我需要把这个$写进去啊.

#4


好怪的,在有的机子上可以,有的机子上报错.  可能是环境的问题,又找不出什么原因.


大家来帮我啊!!我好可怜的!!

#5


没有人回答我的问题吗?

#6


关注,帮你顶!

#7


VB打上补丁VBSP4

#8


真的吗,我去试一下.

#9


现在都有sp6了

#10


帮帮我这个可怜的小女孩吧,打了SP4没有用,可能不是这个解决方法.

#11


chr($的ASCLL码)

#12


现在主要是在句:

iRS.Fields("DZNR").GetChunk(iCount) 就报错! 

无法用到chr($的ASCLL码).

大家帮帮我啊!!

#13


我自已解决了!原来把

iCount = iRS.Fields("DZNR").ActualSize
    
    
 iSZ = iRS.Fields("DZNR").GetChunk(iCount)

写成:

iCount = iRS.Fields("DZNR").ActualSize
    
    
    iSZ = iRS.Fields("DZNR").value

就可以了,好笨的!!!

#1


急,给100分.在GetChunk时报:应用程序在当前操作中使用了错误类型的值. 大家帮帮我啊!!真的很需要你们的帮助.

#2


'用Replace将"$"去掉.
iCount = val(Replace(str(iRS.Fields("DZNR").ActualSize),"$",""))

#3


但是我需要把这个$写进去啊.

#4


好怪的,在有的机子上可以,有的机子上报错.  可能是环境的问题,又找不出什么原因.


大家来帮我啊!!我好可怜的!!

#5


没有人回答我的问题吗?

#6


关注,帮你顶!

#7


VB打上补丁VBSP4

#8


真的吗,我去试一下.

#9


现在都有sp6了

#10


帮帮我这个可怜的小女孩吧,打了SP4没有用,可能不是这个解决方法.

#11


chr($的ASCLL码)

#12


现在主要是在句:

iRS.Fields("DZNR").GetChunk(iCount) 就报错! 

无法用到chr($的ASCLL码).

大家帮帮我啊!!

#13


我自已解决了!原来把

iCount = iRS.Fields("DZNR").ActualSize
    
    
 iSZ = iRS.Fields("DZNR").GetChunk(iCount)

写成:

iCount = iRS.Fields("DZNR").ActualSize
    
    
    iSZ = iRS.Fields("DZNR").value

就可以了,好笨的!!!