Most of the web applications have a lot of images used in it. These images are usually stored in a web server folder and they are accessed by giving the relative path to the file with respect to the root folder of the website. .Net being the platform for distributed application now, ASP.Net can be used to store images that are small to be stored in a database like SQL Server 2000 and later versions. For this purpose the SQL Server database provides a data type called "image" which is used to store images in the database.
To access these images stored in the database we will be using the ADO.Net classes. To find out how to insert and retrieve an image in to the SQL Server database, you can create a .aspx page which can have a HTMLInputFile control which is used to select the image file that is to be saved in the database. You can also create a textbox control in which you can add the image name or some comment or an image id for the image saved. Use a button control to upload the image to the database. Namespaces like System.Data.SqlClient, System.Drawing, System.Data, System.IO, and System.Drawing.Imaging are used in this task.
In the OnClick property of the button you can write the following code to upload an image to the database.
// create a byte[] for the image file that is uploaded
int imagelen = Upload.PostedFile.ContentLength;
byte[] picbyte = new byte[imagelen];
Upload.PostedFile.InputStream.Read (picbyte, 0, imagelen);
// Insert the image and image id into the database
SqlConnection conn = new SqlConnection (@"give the connection string
here...");
try
{
conn.Open ();
SqlCommand cmd = new SqlCommand ("insert into ImageTable "
+ "(ImageField, ImageID) values (@pic, @imageid)",
conn);cmd.Parameters.Add ("@pic", picbyte);
cmd.Parameters.Add ("@imageid", lblImageID.Text);
cmd.ExecuteNonQuery ();
}
finally
{
conn.Close ();
}
You can also write the above code in a function and call that function in the OnClick event of the upload button. The code given above performs the following steps in the process of inserting an image into the database.
1. Get the content length of the image that is to be uploaded
2. Create a byte[] to store the image
3. Read the input stream of the posted file
4. Create a connection object
5. Open the connection object
6. Create a command object
7. Add parameters to the command object
8. Execute the sql command using the ExecuteNonQuery method of the command object
9. Close the connection object
To retrieve the image from the SQL Database you can perform the following steps.
1. Create a MemoryStream object. The code can be something like, MemoryStream mstream = new MemoryStream ();
2. Create a Connection object
3. Open the connection to the database
4. Create a command object to execute the command to retrieve the image
5. Use the command object's ExecuteScalar method to retrieve the image
6. Cast the output of the ExecuteScalar method to that of byte[] byte[] image = (byte[]) command.ExecuteScalar ();
7. Write the stream mstream.Write (image, 0, image.Length);
8. Create a bitmap object to hold the stream Bitmap bitmap = new Bitmap (stream);
9. Set the content type to "image/gif" Response.ContentType = "image/gif";
10. Use the Save method of the bitmap object to output the image to the OutputStream. bitmap.Save (Response.OutputStream, ImageFormat.Gif);
11. Close the connection
12. Close the stream mstream.Close();
Using the above steps you can retrieve and display the image from the database to the web page.
You can use these algorithms and take advantage of the "image" data type available in the SQLServer 2000 database to store small images that correspond to a particular record in the table of the database. This method of storing avoids the tedious task of tracking the path of the web folder if the images are stored in a web folder.
Visit a guide to .net for a complete introduction to .NET framework. Learn about ASP.NET, VB.NET, C# and other related technologies.
deep house cleaning Bannockburn ..As the owner of a Country Mall and Top Site... Read More
The basic language of the internet is html. If you... Read More
You probably heard of the new Firefox browser version 1.0... Read More
Stimulus thru Caffiene or Visual Input?It appears that the Mobi... Read More
First and foremost before I begin my ranting it is... Read More
With their solid-state technology, compact size, and abundant memory, portable... Read More
So you got yourself a digital camcorder. If you want... Read More
HTTP ProtocolThe web is run on port 80. You are... Read More
The battle is heating up for market share, home movie... Read More
I'm eighty-one years old and I bought my first computer... Read More
"Aaaaaahhhhhh! I've been invaded by a virus!" Getting a virus... Read More
Getting started with video editing is very simple you only... Read More
1. Before sitting down for coding, you must have formal... Read More
One of the most confusing parts of beginning your Cisco... Read More
No matter how fast your processor and regardless of how... Read More
CCNA FAQQ. What exams do I have to take to... Read More
Although there are many things that can affect the performance... Read More
Music lovers have been carrying around radios and other bulky... Read More
IF WE say that it was mainly because of the... Read More
The DNS (Domain Name System) servers are what your computer... Read More
If you have a computer for home use or for... Read More
With the new technology used to transfer information to from... Read More
Computers are available in different shapes, sizes and weights, due... Read More
You don't have to fork out $250 for a super-diggy-whizbang... Read More
Addressing a D2X Digital SLRCoolpix 8800 search, this article provides... Read More
kitchen deep cleaning Winnetka ..How familiar does the following sound? Your computer was working... Read More
Apache, MysQL and PHP for Windows could be a nice... Read More
Have you ever thought about building your own computer system?... Read More
Good Morning Mr. Sampson. Please type in you Personal Identification... Read More
CCNA FAQQ. What exams do I have to take to... Read More
How can you compare mp3 players to be sure you're... Read More
iPod users start to get the picture and it's turning... Read More
Time is money. And when you constantly have to divide... Read More
Are you looking for an MP3 player but am not... Read More
Cookies, not the kind that Mom makes, but the computer... Read More
World War II - Germany decided to attack Poland. Poland... Read More
Feeling overwhelmed in selecting a new TV? With all the... Read More
Millions have enjoyed recorded music since 1877 when Thomas Edison... Read More
Google, in their march to stay ahead of the pack... Read More
After reading this good article you will know some important... Read More
I am going to assume that you are running windows... Read More
JPEG, GIFF/JIFF, BMP, and TIFF are the most commonly used... Read More
The year is 1981. IBM has just released the Personal... Read More
In the first part of this home lab tutorial, CCNA... Read More
Most people think that all you have to do to... Read More
Most people download and save so much information on their... Read More
The battle is heating up for market share, home movie... Read More
One of the most common questions computer users ask is,... Read More
BIOS - Basic Input Output SystemThe central processing unit of... Read More
Tech support tells me to type 'regedt32' as opposed to... Read More
Personal Technology |