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.
maide service in Lincolnshire ..Want to save money while promoting your web-based business? Of... Read More
Windows Media Player 10 has been full of bugs from... Read More
Occupational Therapy Made EasierMedical downloads for the pda have improved... Read More
A computer needs a certain amount of information to operate;... Read More
I met an entrepreneur who hole heartedly disagree with an... Read More
While most small businesses really do need to find a... Read More
In the first part of this home lab tutorial, CCNA... Read More
Microsoft Business Solutions is on the way to popularize it's... Read More
For those seeking to buy their first flat panel TV... Read More
Webmasters usually sit at their computers much longer in a... Read More
That desk in front of you and everything else around... Read More
Getting a new computer should be an exciting and gratifying... Read More
PDA Medical BenefitsIf you are concerned about your medical history,... Read More
The following practice, if done regularly, may help you to... Read More
Heading off on vacation soon?Then perhaps you're tempted to take... Read More
This is not your typical lost data story. I was... Read More
Plasma and LCD TVs are the latest trend in home... Read More
Using SQL Server 2000 and above versions you can retrieve... Read More
The best way to get the gaming computer that you... Read More
So you got yourself a digital camcorder. If you want... Read More
Not sure what Windows registry is or how it works?... Read More
You use Ctrl+Alt+Del to see what's running on your PC,... Read More
Tip #1. Do a Google search. Don't be to general... Read More
The first step is: Start > My DocumentsSo you have... Read More
IntroOne of the big advantages of PCs over earlier types... Read More
cleaning lady near Deerfield ..The Cisco Certified Network Associate (CCNA) Certification is meant for... Read More
"Automated Testing" is automating the manual testing process currently in... Read More
Up until the recent past, those who wanted to take... Read More
Cisco Certification: Taking Your First Certification ExamYou've studied hard; you've... Read More
Yes, it's true. You may have inadvertently invited a spy... Read More
1. Let your PC boot up completely before opening any... Read More
One of the most confusing parts of beginning your Cisco... Read More
PDA Medical BenefitsIf you are concerned about your medical history,... Read More
There are many sources of heat that can raise the... Read More
All over the world, people carry with them walkmans and... Read More
Computers have replaced typewriters, but two-finger, hunt-and-peck typing can never... Read More
Computer related terminology could sometimes be daunting to newcomers. These... Read More
Are you stymied by the vast offerings in cheap mp3... Read More
Tech support tells me to type 'regedt32' as opposed to... Read More
This is the third in a series of articles highlighting... Read More
CCNA FAQQ. What exams do I have to take to... Read More
Computers are everywhere, and vary in specification, brands, sizes, shaped,... Read More
Do you use Windows standard uninstall feature? How do you... Read More
We have just entered the time of year that most... Read More
Heading off on vacation soon?Then perhaps you're tempted to take... Read More
MP3 players are Hot! Playing music has come a long... Read More
While most small businesses really do need to find a... Read More
Millions have enjoyed recorded music since 1877 when Thomas Edison... Read More
As the web has evolved, so have the methods of... Read More
On 21 August 2003 Symantec Security Response upgraded the W32.SOBIG.F... Read More
Personal Technology |