谢谢,请详细一点 下面是我在应用的时候碰到的问题
在程序中想将文件保存在数据库中某个字段中于是用到adodb.stream  引用ado2.5
在操作中可以将本地文件保存到服务器数据库中,可是无法将数据库中该字段的值下载到本地
如下为本地文件上传到服务器上无错误提示(数据库为czp 表为czpj 字段为wj类型 varbinary 此字段用来存放文件)
Private Sub Command1_Click()//文件上传到服务器
 Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Set cnn = New ADODB.Connection
Set rs = New ADODB.Recordset
cnn.Open "provider=sqloledb;dirver={sql server};server=10.63.112.8;database=czp", "sa", "1111"
rs.Open "select * from czpj ", cnn, adOpenKeyset, adLockOptimistic
Dim mstream As ADODB.StreamSet mstream = New ADODB.Stream
mstream.Type = adTypeBinary
mstream.Open
mstream.LoadFromFile ("c:\00\1.cel")rs.AddNew
rs!wj = mstream.Read
rs!wj = mstream.Read
rs.Fields("wj").Value = mstream.Readrs.Update
rs.Close
cnn.Close
End Sub
下面为从服务器下载到本地
Private Sub Command2_Click()
Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim mstream As ADODB.StreamSet cnn = New ADODB.Connection
Set rs = New ADODB.Recordset
cnn.Open "provider=sqloledb;dirver={sql server};server=10.63.112.8;database=czp", "sa", "1111"
rs.Open "select * from czpj ", cnn, adOpenKeyset, adLockOptimistic
Set mstream = New ADODB.Stream
rs.MoveNext
mstream.Type = adTypeBinary
mstream.Open
mstream.Write rs!wj
mstream.SaveToFile "c:\00\00\1.cel", adSaveCreateOverWrite
rs.Close
cnn.Close
End Sub
总是在mstream.Write rs!wj 处出现错误 提示为
实时错误 3001 参数类型不正确 或不在可以接受的范围之内,或与其他参数冲突