好的,所以每当我尝试将数据插入我的访问数据库时,它都无法正常工作......
错误说没有给出值......
这是我的代码
Imports System.IO
Imports System.Data.OleDb
Public Class halaman_daftar_anggota
Dim Conn As OleDbConnection
Dim da As OleDbDataAdapter
Dim ds As DataSet
Dim CMD As OleDbCommand
Dim LokasiDB As String
Sub Koneksi()
LokasiDB = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=perpustakaan.accdb"
Conn = New OleDbConnection(LokasiDB)
If Conn.State = ConnectionState.Closed Then Conn.Open()
End Sub
Private Sub halaman_daftar_anggota_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Koneksi()
da = New OleDbDataAdapter("Select * from data_anggota", Conn)
ds = New DataSet
ds.Clear()
da.Fill(ds, "data_anggota")
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Dim dialog As OpenFileDialog = New OpenFileDialog()
dialog.Title = "Browse Foto"
dialog.Filter = "image files(*.png; *.bmp; *.jpg;*.jpeg; *.gif; |*.png; *.bmp; *.jpg;*.jpeg; *.gif;)"
If dialog.ShowDialog() = Windows.Forms.DialogResult.OK Then
PictureBox1.Image = Image.FromFile(dialog.FileName)
End If
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim simpan As String = "INSERT INTO data_anggota (nomor_induk,nama_siswa,kelas_siswa,nomor_anggota,foto) values ('" & TextBox1.Text & "','" & TextBox2.Text & "','" & TextBox3.Text & "','" & TextBox4.Text & "',@image)"
Dim ms As New IO.MemoryStream()
PictureBox1.Image.Save(ms, Imaging.ImageFormat.Jpeg)
Dim data As Byte() = ms.ToArray()
Dim p As New OleDbParameter("@image", OleDbType.LongVarBinary)
p.Value = data
CMD = New OleDbCommand(simpan, Conn)
CMD.ExecuteNonQuery() <- the error located
MsgBox("Berhasil")
End Sub
我的猜测是图像不会插入。(照片是数据库中的 ole 对象)但考虑到我在这方面绝对是新手,所以我真的不能告诉....