store and retrieve image to/from sql server database






1.75/5 (6 votes)
Aug 6, 2007

33627
simple save and fetche image toand from database
Introduction
hi.I have a database for save large image and binary data. we use a simple method for save and retrieve image from sqlserver database.
Background
this article useful for every application programmer in related work.
we use this method in LG-iomind company
Using the code
At first we have two main storedprocedure for save and retrieve image
CREATE PROCEDURE sr_fetch_image(@ID int) AS BEGIN SELECT [Name], Exc, Image_Data FROM [dbimage].[dbo].[tbl_Image] WHERE [ID]=@ID END GO CREATE PROCEDURE [sr_insert_Image] ( @Name [nvarchar](50), @Exc [nvarchar](50), @Image_Data [image]) AS INSERT INTO [dbimage].[dbo].[tbl_Image] ( [Name], [Exc], [Image_Data]) VALUES ( @Name, @Exc, @Image_Data) GO
and some code in C# for save and fetching
// Save image in database OpenFileDialog odlg = new OpenFileDialog(); odlg.ShowDialog(); Cursor.Current = Cursors.WaitCursor; this.Refresh(); Image bmp=Bitmap.FromFile(odlg.FileName); System.IO.MemoryStream ms=new System.IO.MemoryStream(); bmp.Save(ms,System.Drawing.Imaging.ImageFormat.Bmp); sr_fetch_imageTableAdapter.Insert("df", "rer", ms.GetBuffer()); Cursor.Current = Cursors.Default;
// fetch data from database sr_fetch_imageTableAdapter.Fill(dSMoblie.sr_fetch_image, 3); System.IO.MemoryStream ms = new System.IO.MemoryStream(); //bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp); ms.Write(dSMoblie.sr_fetch_image[0].Image_Data, 0, dSMoblie.sr_fetch_image[0].Image_Data.Length); Image bmp = Bitmap.FromStream(ms); pictureBox1.Image = bmp;
note that sr_fetch_imageTabelAdapter is my table adapter that have to stored procedure for save and fetching