CREATE TABLE [TestTable]( [ID] [bigint] NOT NULL, [testImage] [image] NULL,)
CREATE PROCEDURE [sp_InsertImage]( @ID bigint, @Image image)ASBEGIN INSERT INTO [TestTable] ([ID] ,[Image]) VALUES ( @ID, @Image )END
//Method to insert into Databaseprivate void InsertImage() {Try{ FileInfo fileImage; fileImage = new FileInfo(@"C:\image1.jpg"); //File image1.jpg to insert into database long ImageFileLength = fileImage.Length; //Getting file length byte[] ImageFile = new byte[ImageFileLength]; FileStream fs = new FileStream(@"C:\image1.jpg", FileMode.Open, FileAccess.Read, FileShare.Read); // open a stream to file int iBytesRead = fs.Read(@"C:\image1.jpg", 0, Convert.ToInt32(ImageFileLength)); // Read file and store into byte fs.Close(); // Close the stream //******************************************************// I am using enterprise library to connect with database and store information Database db = DatabaseFactory.CreateDatabase(); \\ Create database instance DbConnection connection = db.CreateConnection(); \\ Create connection connection.Open(); // open Connection DbCommand dbc1; dbc1 = db.GetStoredProcCommand("SP_InsertImage"); db.AddInParameter(dbc1, "ID", DbType.Int64, 10001); db.AddInParameter(dbc1, "Image", DbType.Binary, (object) ImageFile); db.ExecuteNonQuery(dbc1); if (connection.State == ConnectionState.Open) connection.Close(); //*****************************************************}Catch(Exception exc){//Error handling } }