VB做完程序后怎么保存啊?

VB做完程序后怎么保存啊?,第1张

1、首先,用以下程序设置使VB保存和存储到数据库

2、接着继续输入程序图片存入数据。

3、在数据库中读出图片。

4、最后通过以下程序的输入使得可以用临时文件保存。

5、最后继续添加如下程序编码,如此一来就可以完成VB自动保存到数据库存的 *** 作了。

VB6 保存和读取图片到数据库

dim stm as ADODB.Stream

dim rs as ADODB.Recordset

sub SavePictureToDB(cn As ADODB.Connection)

'将图片存入数据库

On Error GoTo EH

Set stm = New ADODB.Stream

rs.Open "select ImagePath,ImageValue from tbl_Image", cn, adOpenKeyset, adLockOptimistic

CommonDialog1.ShowOpen

Text1.Text = CommonDialog1.FileName

With stm

.Type = adTypeBinary

.Open

.LoadFromFile CommonDialog1.FileName

End With

With rs

.AddNew

.Fields("ImagePath") = Text1.Text

.Fields("ImageValue") = stm.Read

.Update

End With

rs.Close

Set rs = Nothing

Exit Sub

EH: MsgBox Err.Description, vbInformation, "Error"

End Sub

Sub LoadPictureFromDB(cn As ADODB.Connection)

'载数据库中读出图片

On Error GoTo EH

Dim strTemp As String

Set stm = New ADODB.Stream

strTemp = "c:/temp.tmp" '临时文件,用来保存读出的图片

rs.Open "select ImagePath,ImageValue from tbl_image", cn, , , adCmdText

With stm

.Type = adTypeBinary

.Open

.Write rs("ImageValue")

.SaveToFile strTemp, adSaveCreateOverWrite

.Close

End With

Image1.Picture = LoadPicture(strTemp)

Set stm = Nothing

rs.Close

Set rs = Nothing

Exit Sub

EH: MsgBox Err.Description, vbInformation, "Error"

End Sub

也可用FileSystemObject的方式来保存

Dim Sql As String

Dim fs As New FileSystemObject

Sub SavePicture()

Dim sByte() As Byte

Dim bIsNull As Boolean

If fs.FileExists(g_FilePath) Then

Open g_FilePath For Binary Access Read As #1

ReDim sByte(1 To LOF(1))

Get #1, 1, sByte()

Close #1

bIsNull = False

Else

bIsNull = True

End If

Dim rs As New ADODB.Recordset

rs.Open "select empid,empname,pic from emp where empid = '" &Trim(txtEmpId.Text) &"'", cn, adOpenStatic, adLockOptimistic

rs.AddNew

rs!EmpId = txtEmpId.Text

rs!EmpName = txtEmpName.Text

If bIsNull <>True Then

rs!pic = sByte

End If

rs.Update

MsgBox "save data ok!"

txtEmpId.Text = ""

txtEmpName.Text = ""

Set picView.Picture = Nothing

cmdAdd.Enabled = True

End Sub

Sub viewJpg()

Dim TmpFile As String

Dim jByte() As Byte

Sql = "select * from emp"

Set rsViewJpg = New ADODB.Recordset

rsViewJpg.Open Sql, cn, adOpenStatic, adLockOptimistic

rsViewJpg.MoveFirst

If Not rsViewJpg.BOF Then

If Not rsViewJpg.EOF Then

txtEmpId.Text = rsViewJpg!EmpId

txtEmpName.Text = rsViewJpg!EmpName

Set pic.Picture = Nothing

If Not fs.FolderExists(App.Path + "/temp") Then

fs.CreateFolder (App.Path + "/temp")

End If

TmpFile = App.Path + "/Temp/" + rsViewJpg.Fields(0) + ".jpg"

If Not IsNull(rsViewJpg!pic) Then

jByte = rsViewJpg!pic

Open TmpFile For Binary Access Write As #1

Put #1, , jByte

Close #1

pic.Picture = LoadPicture(TmpFile)

End If

End If

End If

End Sub


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10049200.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-04
下一篇2023-05-04

发表评论

登录后才能评论

评论列表(0条)

    保存