How to Save an Image in a SQL Server Database? - myoddPc

Computer Information - myOddPc

How to Save an Image in a SQL Server Database?

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 objectTo 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 object3. Open the connection to the database4. Create a command object to execute the command to retrieve the image5. Use the command object’s ExecuteScalar method to retrieve the image6. 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 connection12. 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.

Balaji B

Sony PSP - Not Just For Games

Zen and the Art of Buying Computer Parts
The Ugly Face Of Technology
Wind Turbine Lights to Protect Birds
Robotic Manufacturing Lighting
Is that software really free?
Tips on Finding the Best CD Duplication Services
Making the Most of Digital Camera Memory Cards
Microsoft Dynamics GP & CRM in Transportation & Logistics
Computer Dos and Donts
Sony PSP - Not Just For Games

SyncUp – A File/Folder Synchronizer For Windows

Basic Tips and tricks for Windows XP
Buying the Perfect Computer – The FIRST Time
Dirty Little Computer Viruses and How To Protect Yourself
10 Secrets to a Healthy Computer and a Happier You
8 Simple Ways to Defend Against Evil Doers Both Online and Off
Microsoft CRM Programming Secrets – Tips For Developers
Microsoft Great Plains Integration with Legacy Systems – Overview For Developer
Microsoft RMS – Great Plains Integration – Overview For IT Specialist
Removing Incoming Email in MS Exchange, C# Example
SyncUp – A File/Folder Synchronizer For Windows

Articles by the same author

Benefits of Portal Content Management
An Introduction to .

NET Framework

XML Parser and Their Types
Accessing XML Using Java Technologies
Knowledge Management Benefits - An Overview
How to Save an Image in a SQL Server Database?
Understanding XML Server
How to Use SQLXML to Retrieve Data from SQL Server Database?

Disclaimer

Please note that this website is for information only. Whilst every care has been taken to provide accurate information you should always seek the advice of a professional before attempting any repairs or making any purchase(s).
You need to take special care to ensure that the information given applies your system.

Loans
Loans information and advice from the experts at ThisIsMoney.co.uk

Loans
Loans information and advice from the experts at ThisIsMoney.co.uk
marker About Us | Site Map | Privacy Policy | Contact Us | ©2005-2006