Target: Target of
this tutorial is to Store or Save images in MySQL Server Database from Visual
Basic .NET 2010.
Assumption: I am
assuming that you are familiar with the following
1. Creating
Database, Table in MySQL
2. Adding data
to MySQL database.
3. Creating
projects, saving projects, writing codes in VB.net.
Prerequisites: To achieve the target, you will have to have the following things,
3. An IDE for
DB Management. Such as SQLyog, PHPmyadmin etc. If you don’t have any, then you
can download a free tool.
Click Here to Download MySQL Query Browser
Click Here to Download MySQL Query Browser
4. Finally,
Visual Basic .NET 2010 [ 2008 will also work ]
Once you have the above things, install all of them.
If you are not familiar with using MySQL Server Database with
Visual Basic .NET then I recommend the blog post at the following link
The Database: We have
named our database as “my_test_projects” and the table that will have the image
as “image_in_db”. The structure of the table “image_in_db” is as follows.
Column Name
|
Type
|
Description
|
id
|
int
|
This is not necessary, I have just used it, and I think you should
to.
|
Image_data
|
mediumblob
|
This field actually holds the image. I am taking “mediumblob” as data
type as it can hold nearly 4 MB of data, that is an image with nearly 4 MB of
file size.
|
Ok, now open VB.net and create a new project and name it
whatever you like and save it. Then, as described in this post “Using
MySQL Database with Visual Basic .NET 2010” Add Reference of MySQL
Connector to your project.
The Form:
Design the form as follow,
Here, we have 4 controls. Description of the controls are
given below.
Serial
|
Control
|
Name
|
Value
|
Usage
|
1
|
Picture Box
|
pic_box_save
|
It holds the image that will be saved in the DB. You can set an image
by default as I did.
|
|
2
|
Button
|
btn_save
|
Save
|
The saving procedure is underneath this button.
|
3
|
Picture Box
|
pic_box_get
|
It holds the image after pulling that from the DB.
|
|
4
|
Button
|
btn_get
|
Get
|
The procedure to pull the image from the DB lies with this button.
|
Ok so now we are set to start coding.
First Phase: Creating connection and declaring variables.
Explanation of the above code is already
given in this post “Using
MySQL Database with Visual Basic .NET 2010”, please read that post if you
need.
Second Phase: Saving the image in DB.
Double-Click
the “btn_save” button to open the code editor and write the following code.
We will convert the image file to Byte type data. But before that,
we will need to place the image file in memory-stream. That’s why in line 1 we
have taken mstream as an instance of
memory-stream. Then in the second line, we have saved the image of pic_box_save in mstream. Right after that, we have
taken the stream in a Byte
type array named as arrImage and then closed the stream
on line 4.
That’s it and we are ready to save the image.
In the Try…Catch block we have writen our SQL statement and then we made the
SQL Command. After that, in line 8 and 9, we passes our data to the command. In
line 8, we passed Nothing as the value of @image_id and then in line 9 we passed arrImage as the value of @image_data. Then in line 10 we have executed our SQL
Command which actually saves the image in the DB. If this process fails for any
reason then the code in line 12 and 13 will be executed, where we show the
reason for the failure as a message and
then exit the sub, respectively. But if this process is succeded then the code
of line 15 will be executed which will show a message regarding the success of
the saving process.
Third Phase: Pulling the image back from the DB.
Double-Click
the “btn_get” button to open the code editor and write the following code.
To get the image back we just revert the
image-saving procedure. In case of saving the image what we did is, Image in
Picture Box > Memory Stream > Byte > Database. Here what we have done
is the reverse process.
Line
3 to 6 : Pulling the image from the DB
Line
7: Getting the image in a Byte
array named as arrImage.
Line 8: Getting the Byte array in memory-stream
named as mstream.
Line 9: Putting the data
from the memory-stream mstream in a picture box named as pic_box_get.
And that’s it. We are done.
The Full Source Code:

Boss, vb.net setup āĻāϰāϤে āĻĒাāϰāĻি āύা। āĻিāĻাāĻŦে āϰাāύ āĻāϰāϤে āĻšā§ āϤাāĻ āĻাāύি āύা। āĻāĻāĻĻāĻŽ new āĻāĻŽি। āĻāĻŽাāĻে āĻāĻāĻু āĻĄিāĻেāĻāϞ āĻাāĻŦে āĻšেāϞ্āĻĒ āĻāϰāĻŦেāύ āĻĒ্āϞিāĻ। āĻāĻŽাāϰ āĻŽেāĻāϞ Hafizur_Rahman_badsha@yahoo.com
ReplyDeleteāĻāĻĒāύি āĻিāĻŦি.āύেāĻ āĻāϰ āĻোāύ āĻাāϰ্āϏāύ āϏেāĻāĻāĻĒ āĻĻিāϤে āĻাāĻ্āĻেāύ? ⧍ā§Ļā§Ļā§Ž āύাāĻি ⧍ā§Ļā§§ā§Ļ ? āϏেāĻ āĻāĻĒ āĻĻেāĻŦাāϰ āĻŦ্āϝাāĻĒাāϰāĻা āĻুāĻŦ āϏিāĻŽ্āĻĒāϞ, āϤāĻŦু āĻĒ্āϰāĻĨāĻŽāĻŦাāϰ āĻšāĻŦাāϰ āĻāύ্āϝ āĻāĻĒāύি āĻাāϰো āĻাāĻে āĻĨেāĻে āϏāϰাāϏāϰি āĻāĻāĻু āĻšেāϞ্āĻĒ āύিāϞেāĻ āĻāĻĒāύাāϰ āĻāύ্āϝ āĻাāϞো āĻšāĻŦে। āĻāĻŽি āĻĒুāϰো āĻিāĻāĻোāϰিāϝ়াāϞ āĻĻিāϤে āĻĒাāϰāĻŦো āĻিāύ্āϤু āĻĒ্āϰāĻŦāϞেāĻŽ āĻšāϞো āĻāĻŽি āĻāϝ়াāύāĻ āĻŦিāĻি āĻļিāĻĄিāĻāϞে āĻāĻি āĻāĻ āĻোāĻা āĻŽাāϏ, āĻāĻāϞিāϏ্āĻ āĻŽিāύিāĻŽাāĻŽ 25 āϤাāϰিāĻ āĻĒāϰ্āϝāύ্āϤ, āϤাāĻ āĻāϰ āĻŽāϧ্āϝে āĻোāύāĻ āĻšেāϞ্āĻĒ āĻāϰāϤে āĻĒাāϰāĻŦো āύা, āϏāϰি।
Delete