123ArticleOnline Logo
Welcome to 123ArticleOnline.com!
ALL >> Technology,-Gadget-and-Science >> View Article

How To Save An Image In A Sql Server Database?

Profile Picture
By Author: Balaji B
Total Articles: 11
Comment this article
Facebook ShareTwitter ShareGoogle+ ShareTwitter Share

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.
About the Author Visit .NET Programmers Guide for a complete introduction to .NET framework. Learn about ASP.NET, VB.NET, C# and other related technologies.

** Attention Webmasters / Website Owners **
You can reprint this article on your website as long as you do not modify any of the content, and include our resource box as listed above with all links intact and hyperlinked properly.

Total Views: 278Word Count: 662See All articles From Author

Add Comment

Technology, Gadget and Science Articles

1. Extract Restaurant Info From Lieferando Germany For Market Insights
Author: Food Data Scrape

2. Erp For Small Business: Unlock Growth & Beat Your Rivals
Author: Alex Forsyth

3. Gain Sneaker Listings With Poizon Sneaker Data Scraping
Author: Retail Scrape

4. How Can A Doordash Dataset Help Data-driven Strategic Business Insights?
Author: Mobile App Scraping

5. Ai Creativity And The Rise Of Ai Art Generators | Impaakt
Author: Impaakt Magazine

6. Scrape Footlocker Product Data For Resale Success
Author: Actowiz Solutions

7. The Science Behind Nano Coating For Textiles And Sofas
Author: Vetro Power

8. Fabric Protection For Sofas_ A Profitable Value-add For Furniture Manufacturers
Author: Vetro Power

9. How Fabric Protection Can Extend The Life Of Your Commercial Spaces
Author: Vetro Power

10. Challenges In Integrating Organizational Change With Crm
Author: DialDesk

11. Insurance Portal Development: Key Features To Stay Ahead Of The Competition
Author: crmjetty

12. Amazon Usa | How Review Scraping Boosted Tech Brand Cx
Author: Mellisa Torres

13. How Does Web Scraping Help With Accurate Uber Eats Menu Price Tracking Methods?
Author: Retail Scrape

14. Scraping Zomato Data Uttarakhand: Food Insights Guide
Author: Actowiz Solutions

15. Why Enseur Is Among The Best Event Ticketing Platforms For Seamless Event Success
Author: Enseur Tech

Login To Account
Login Email:
Password:
Forgot Password?
New User?
Sign Up Newsletter
Email Address: