Hi! I have a code here which can add,search,delete,clear and insert a picture of users information. The problem is I don't know how and what syntax should I make the picture add in the add button to save it in the database and show the picture in the data grid view along with the users informations...I hope and advance thanks to people that can help me ...Thanks
P.S this is the only thing that i'm missing in my code, all of them is executable. It can already appear in the picture box but I haven't connected yet in my database which that is the problem. I will paste here under all the codes i already made, hope this will help.
What I have tried:
Imports System.Data.OleDb
Imports System.IO
Imports System.DBNull
Public Class ProjectTwo
Dim cnn As New OleDb.OleDbConnection
Dim imgName As String
Dim cmd As New OleDb.OleDbCommand
Private Sub ProjectTwo_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
cnn = New OleDb.OleDbConnection
cnn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=I:\ProjectTwo\ProjectTwoEmployment.accdbProvider=Microsoft.ACE.OLEDB.12.0;Data Source=I:\ProjectTwo\ProjectTwoEmployment.accdb"
Me.RefreshData()
End Sub
Private Sub BtnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAdd.Click
Dim cmd As New OleDb.OleDbCommand
If Not cnn.State = ConnectionState.Open Then
cnn.Open()
End If
cmd.Connection = cnn
If Me.TxtEID.Tag & "" = "" Then
cmd.CommandText = "INSERT INTO PersonalInfo (EmploymentID, EmploymentName, DateOfBirth, PlaceOfBirth, Address , Phone , Sex) " & _
" VALUES(" & Me.TxtEID.Text & ",'" & Me.TxtEName.Text & "','" & Me.TxtEDate.Text & "','" & _
Me.TxtEPlace.Text & "','" & Me.TxtEAdd.Text & "','" & Me.TxtEPhone.Text & "','" & _
Me.TxtESex.Text & "')"
cmd.ExecuteNonQuery()
Else
cmd.CommandText = "UPDATE PersonalInfo " & _
" SET EmploymentID =" & Me.TxtEID.Text & _
", EmploymentName='" & Me.TxtEName.Text & "'" & _
", DateOfBirth='" & Me.TxtEDate.Text & "'" & _
", PlaceOfBirth='" & Me.TxtEPlace.Text & "'" & _
", Address='" & Me.TxtEAdd.Text & "'" & _
", Phone='" & Me.TxtEPhone.Text & "'" & _
", Sex='" & Me.TxtESex.Text & "'" & _
" WHERE EmploymentID=" & Me.TxtEID.Tag
cmd.ExecuteNonQuery()
End If
Me.RefreshData()
Me.BtnClear.PerformClick()
cnn.Close()
End Sub
Private Sub RefreshData()
If Not cnn.State = ConnectionState.Open Then
cnn.Open()
End If
Dim da As New OleDb.OleDbDataAdapter("SELECT EmploymentID as [EmploymentID], " & _
"EmploymentName as [EmploymentName], DateOfBirth, PlaceOfBirth, Address, Phone , Sex , Photo" & _
" FROM PersonalInfo ORDER BY EmploymentID", cnn)
Dim dt As New DataTable
da.Fill(dt)
Me.DataGridView1.DataSource = dt
cnn.Close()
End Sub
Private Sub BtnClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnClear.Click
Me.TxtEID.Text = ""
Me.TxtEName.Text = ""
Me.TxtEDate.Text = ""
Me.TxtEPlace.Text = ""
Me.TxtEAdd.Text = ""
Me.TxtEPhone.Text = ""
Me.TxtESex.Text = ""
Me.PictureBox1.Image = Nothing
Me.RefreshData()
Me.BtnUpdate.Enabled = True
Me.BtnAdd.Text = "Add"
Me.TxtEID.Focus()
End Sub
Private Sub BtnUpdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnUpdate.Click
If Me.DataGridView1.Rows.Count > 0 Then
If Me.DataGridView1.SelectedRows.Count > 0 Then
Dim intEID As Integer = Me.DataGridView1.SelectedRows(0).Cells("EmploymentID").Value
If Not cnn.State = ConnectionState.Open Then
cnn.Open()
End If
Dim da As New OleDb.OleDbDataAdapter("SELECT * FROM PersonalInfo " & _
" WHERE EmploymentID=" & intEID, cnn)
Dim dt As New DataTable
da.Fill(dt)
Me.TxtEID.Text = intEID
Me.TxtEName.Text = dt.Rows(0).Item("EmploymentName")
Me.TxtEDate.Text = dt.Rows(0).Item("DateOfBirth")
Me.TxtEPlace.Text = dt.Rows(0).Item("PlaceOfBirth")
Me.TxtEAdd.Text = dt.Rows(0).Item("Address")
Me.TxtEPhone.Text = dt.Rows(0).Item("Phone")
Me.TxtESex.Text = dt.Rows(0).Item("Sex")
Me.TxtEID.Tag = intEID
Me.BtnAdd.Text = "UPDATE"
Me.BtnUpdate.Enabled = False
cnn.Close()
End If
End If
End Sub
Private Sub BtnDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnDelete.Click
If Me.DataGridView1.Rows.Count > 0 Then
If Me.DataGridView1.SelectedRows.Count > 0 Then
Dim intEID As Integer = Me.DataGridView1.SelectedRows(0).Cells("EmploymentID").Value
If Not cnn.State = ConnectionState.Open Then
cnn.Open()
End If
Dim cmd As New OleDb.OleDbCommand
cmd.Connection = cnn
cmd.CommandText = "DELETE FROM PersonalInfo WHERE EmploymentID=" & intEID
cmd.ExecuteNonQuery()
Me.RefreshData()
cnn.Close()
End If
End If
End Sub
Private Sub BtnPicture_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnPicture.Click
Dim opf As New OpenFileDialog
opf.Filter = "Choose Image(*.jpg;*.png;*.gif)|*.jpg;*.png;*.gif"
If opf.ShowDialog = DialogResult.OK Then
PictureBox1.Image = Image.FromFile(opf.FileName)
End If
End Sub
Private Sub BtnSearch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSearch.Click
Try
cnn.Open()
Dim data = New DataTable
Dim dataT As New OleDbDataAdapter
With cmd
.Connection = cnn
.CommandText = "Select * from PersonalInfo where EmploymentID like '" & TxtEID.Text & "%'"
End With
dataT.SelectCommand = cmd
dataT.Fill(data)
DataGridView1.DataSource = data
Catch ex As Exception
MsgBox(ex.Message)
End Try
cnn.Close()
End Sub
End Class