How To Insert Image In Access Database Using VB.Net

How To Insert Image In Access Database Using VB.Net

This tutorial will help you How To Insert Image In Access Database Using VB.Net. In this article, we will be using Visual Basic 2008 and MS Access 2007 for our database.

This tutorial can answer the questions asked from another site about how to insert and retrieve IMAGE from ACCESS database using vb.net.

Please follow the instruction below:

  • Step 1: Create a database in MS Access
    • Database Name:  studentdb.accdb
    • Table: tblstudent
      • The structure of tblstudent:
FieldsDataType
studIDAutonumber
FNAMEText
LNAMEText
COURSEText
YRText
AGEText
EAMILText
studimgOLE Object
  • Step 2: Create a Visual Basic 2008 Project
    • Create and Save it as “Saveandrettriveimg”
    •  Then Put the database(studentdb.accdb) inside Project execution folder(\bin\debug)
    • Design the form like as shown below.
Save and Retrieve Image from Database
Save and Retrieve Image from Database
  • Step 3: Writing code in Visual Basic
    • Under Public Class Add the Following Code:
Dim conn As New OleDb.OleDbConnection
Dim Myconnection As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Application.StartupPath & "\studentdb.accdb"
Dim cmd As New OleDb.OleDbCommand
Dim da As New OleDb.OleDbDataAdapter
Dim result As Integer
Dim imgpath As String
Dim arrImage() As Byte
Dim sql As String
  • On Click “Browse Image” Button.


Try

Dim OFD As FileDialog = New OpenFileDialog()

OFD.Filter = "Image File (*.jpg;*.bmp;*.gif)|*.jpg;*.bmp;*.gif"

If OFD.ShowDialog() = DialogResult.OK Then
imgpath = OFD.FileName
Pic1.ImageLocation = imgpath

End If

OFD = Nothing

Catch ex As Exception
MsgBox(ex.Message.ToString())
End Try
  • On Click “SAVE” Button.
Try

Dim mstream As New System.IO.MemoryStream()

Pic1.Image.Save(mstream, System.Drawing.Imaging.ImageFormat.Jpeg)
arrImage = mstream.GetBuffer()
Dim FileSize As UInt32
FileSize = mstream.Length
mstream.Close()

conn.ConnectionString = Myconnection
conn.Open()
sql = "INSERT INTO tblstudent(FNAME,LNAME, COURSE, YR, AGE, EMAIL,studimg) " & _
" VALUES (@a, @LNAME, @COURSE, @YR, @AGE, @EMAIL,@studimg)"

cmd.Connection = conn
cmd.CommandText = sql
cmd.Parameters.AddWithValue("@a", TXTFIRSTNAME.Text)
cmd.Parameters.AddWithValue("@LNAME", TXTLNAME.Text)
cmd.Parameters.AddWithValue("@COURSE", TXTCOURSE.Text)
cmd.Parameters.AddWithValue("@YR", TXTYR.Text)
cmd.Parameters.AddWithValue("@AGE", TXTAGE.Text)
cmd.Parameters.AddWithValue("@EMAIL", TXTEMAIL.Text)
cmd.Parameters.AddWithValue("@studimg", arrImage)
Dim r As Integer
r = cmd.ExecuteNonQuery()
If r > 0 Then
MsgBox("Student Record hass been Saved!")
Else
MsgBox("No record has been saved!")
End If
conn.Close()

Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
  • On Click “Search” Button
sql = "Select * from tblstudent where studID=" & Val(TextBox1.Text)
conn.ConnectionString = Myconnection
conn.Open()
With cmd
.Connection = conn
.CommandText = sql
End With
Dim arrImage() As Byte
Dim publictable As New DataTable
Try
da.SelectCommand = cmd
da.Fill(publictable)
TXTLNAME.Text = publictable.Rows(0).Item(2)
TXTFIRSTNAME.Text = publictable.Rows(0).Item(1)
TXTCOURSE.Text = publictable.Rows(0).Item(3)
TXTYR.Text = publictable.Rows(0).Item(4)
TXTAGE.Text = publictable.Rows(0).Item(5)
TXTEMAIL.Text = publictable.Rows(0).Item(6)
arrImage = publictable.Rows(0).Item(7)

Dim mstream As New System.IO.MemoryStream(arrImage)
Pic1.Image = Image.FromStream(mstream)

Catch ex As Exception
MsgBox(ex.Message)
Finally
da.Dispose()
conn.Close()

End Try
  • Step 4: Run your Visual Basic Project
    • Press “F5” or Click the Play Button.

Downloadable Source Code

You can Download the full Source Code saveandretriveimage

Free VB.NET Resources

For More VB.NET Projects with source code, I listed it in this link.

If you want to know how to master vb.net with MySQL Database in 30 minutes, you can start your lesson here.

Or you can start your lesson here about the 5 Steps on How to Connect VB.Net in MySQL database.

Frequently Asked Questions

What does this VB.NET code snippet demonstrate?

Focused VB.NET WinForms code pattern: how to add, insert, save, search, display, print, connect to SQL Server, or perform a common calculation with minimum code. Drop-in pattern you can adapt for your own capstone module.

What Visual Studio and SQL Server versions does this VB.NET project require?

Most projects use VB.NET WinForms on .NET Framework 4.5+ with SQL Server 2012 Express or higher. To run: install Visual Studio 2019 / 2022 (Community is free) with the ‘Desktop development with .NET’ workload, install SQL Server Express + SSMS, open the .sln file, build, run.

How do I set up the database for this VB.NET project?

Open SQL Server Management Studio (SSMS) and connect to your SQL Server (e.g. localhost\SQLEXPRESS). Right-click Databases, choose Restore Database OR New Database then import the included .sql script. Update the connection string in App.config (or in code-behind Module) with your server name + credentials. Rebuild and run.

Can I use this VB.NET project for a BSIT capstone or thesis?

Yes, VB.NET is one of the most accepted languages by Philippine BSIT panels. Extend it: add role-based access (admin/staff/customer login redirect), Crystal Reports or RDLC reports, dashboards with Chart control, audit log, multi-branch support. Pair with Chapter 1-5 documentation matching your panel’s rubric.

Why am I getting ‘connection error’ or ‘cannot find SQL Server’?

Three common VB.NET issues: (1) Connection error: SQL Server isn’t running. Open SQL Server Configuration Manager and verify SQL Server (SQLEXPRESS) service is started. (2) Wrong server name in connection string. Try .\SQLEXPRESS, (local)\SQLEXPRESS, or your machine name. (3) Login failed: SQL Server is set to ‘Windows-only’ authentication. Switch to Mixed Mode in SSMS Server Properties, Security.

Where can I find more VB.NET projects with source code?

Browse the VB.NET Projects hub for the full library. For C# WinForms alternatives see C# Projects. For ASP.NET web alternatives see ASP.NET Projects. For BSIT capstone idea lists see 150 Best Capstone Project Ideas.

Inquiries

If you have any questions or suggestions about this tutorial on how to insert and display pictures from the access database in vb.net, please leave a comment below.

Help Us Grow

If you find this tutorial helpful please share this with your friends and to help us grow please hit the LIKE button on our Facebook Page. Thank You.

2 thoughts on “How To Insert Image In Access Database Using VB.Net”

Leave a Comment