我用pb6.5编写的程序,连sqlserver2000,执行后返回“插入失败”,语句如下,望高人指点: string docname, named
integer value,li_f,i
integer li_fileptr,li_loops
long ll_filelen,ll_bytes_read
Blob lbb_Read,lbb_Total
value = GetFileOpenName("选择图形文件",docname,named,"BMP","Bmp Files (*.BMP),*.BMP,Jpeg Files (*.JPG),*.JPG")
IF value = 1 THEN
//打开图像文件
ll_filelen = FileLength(docname) //获取文件长度, 必须在打开之前
li_fileptr = FileOpen(docname,STREAMMODE!,READ!,LOCKREAD!)
If li_fileptr = -1 Then
Beep(2)
MessageBox("错误","图形文件打开错误!")
Return
End If
If ll_filelen > 32765 Then //一次只能读32K
If Mod(ll_filelen, 32765) = 0 Then
li_loops = ll_filelen / 32765
Else
li_loops = (ll_filelen / 32765) + 1
End If
Else
li_loops = 1
End If
//循环读取图片文件
For i = 1 to li_loops
ll_bytes_read = FileRead(li_fileptr,lbb_Read)
lbb_Total = lbb_Total + lbb_Read
Next
FileClose(li_fileptr)
SetPicture(p_1,lbb_Total)
SQLCA.AutoCommit = true UPDATEBLOB pictest set picture = :lbb_total ;If SQLCA.SQLDBCode=0 Then
COMMIT ;Else
MessageBox("数据库错误","插入失败")
ROLLBACK;Return
End If
end if
SQLCA.AutoCommit = false
integer value,li_f,i
integer li_fileptr,li_loops
long ll_filelen,ll_bytes_read
Blob lbb_Read,lbb_Total
value = GetFileOpenName("选择图形文件",docname,named,"BMP","Bmp Files (*.BMP),*.BMP,Jpeg Files (*.JPG),*.JPG")
IF value = 1 THEN
//打开图像文件
ll_filelen = FileLength(docname) //获取文件长度, 必须在打开之前
li_fileptr = FileOpen(docname,STREAMMODE!,READ!,LOCKREAD!)
If li_fileptr = -1 Then
Beep(2)
MessageBox("错误","图形文件打开错误!")
Return
End If
If ll_filelen > 32765 Then //一次只能读32K
If Mod(ll_filelen, 32765) = 0 Then
li_loops = ll_filelen / 32765
Else
li_loops = (ll_filelen / 32765) + 1
End If
Else
li_loops = 1
End If
//循环读取图片文件
For i = 1 to li_loops
ll_bytes_read = FileRead(li_fileptr,lbb_Read)
lbb_Total = lbb_Total + lbb_Read
Next
FileClose(li_fileptr)
SetPicture(p_1,lbb_Total)
SQLCA.AutoCommit = true UPDATEBLOB pictest set picture = :lbb_total ;If SQLCA.SQLDBCode=0 Then
COMMIT ;Else
MessageBox("数据库错误","插入失败")
ROLLBACK;Return
End If
end if
SQLCA.AutoCommit = false
UPDATEBLOB pictest set picture = :lbb_total ;
指的就是这句,请给予指点