Solved

Insert Image into SQL Database from VB.NET bound to id field in dataset.

Posted on 2004-08-17
9
296 Views
Last Modified: 2008-03-10
Here is my question and I hope it is clear enough.

In an app I am building, I need to be able to insert and update images in a sql database table that are bound to the id field of the same table. In other words I want to be able to select which id a certain image will correspond with.

I would like to be able to bind the image field to a dataset I have created. I currently have several textboxes bound to a combobox bound to this dataset and would like the image field to be bound to the existing dataset in a similar way. Please provide code and examples. I am using Visual Studio Enterprise Architect 2003. Please let me know if you need more info. Thanks in advance!!!
0
Comment
Question by:patrickkenney
  • 5
  • 4
9 Comments
 
LVL 18

Expert Comment

by:DotNetLover_Baan
ID: 11825846
0
 

Author Comment

by:patrickkenney
ID: 11826975
I have seen that code and it works great, but what I need is the ability to select an image by a id. I have a database with employee information that I would like to insert images for. I would like to be able to select and employee and insert an image for him/her or update a new image. Can someone provide code for this? Thanks!!
0
 
LVL 18

Expert Comment

by:DotNetLover_Baan
ID: 11827383
Hi there,
change the code given in that example...
To select:
     Dim cmd As New SqlCommand("SELECT ImageField From MyTable WHERE EmpId=" & EmpId)
     cmd.Connection = con
     Dim da As New SqlDataAdapter(cmd)
     Dim ds As New DataSet()
     con.Open()
     da.Fill(ds)
     con.Close()
     Dim bits As Byte() = CType(ds.Tables(0).Rows(0).Item(0), Byte())
     Dim memorybits As New MemoryStream(bits)
     Dim bitmap As New Bitmap(memorybits)
     PictureBox1.Image = bitmap
   
To update:
     Dim Data() As Byte 'Say Data() has the binary data of the Image
     Dim cmd As New SqlCommand("UPDATE MyTable SET ImageField=" & Data &" WHERE EmpId=" & EmpId)
     cmd.Connection = con
     con.Open()
     cmd.ExecuteNonQuery
     con.Close()

-Baan
0
Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

 

Author Comment

by:patrickkenney
ID: 11830983
I receive an error when I try to use &Data& as a variable in the update statement. Help!
0
 
LVL 18

Accepted Solution

by:
DotNetLover_Baan earned 500 total points
ID: 11832543
First read the image file into Data()...

            Dim fs As New FileStream(YourFile.jpg, FileMode.Open)
            Dim Data() As Byte = New [Byte](fs.Length) {}
            fs.Read(Data, 0, fs.Length)

Then update, with SqlCommand.
0
 
LVL 18

Expert Comment

by:DotNetLover_Baan
ID: 11832547
what is the error you are getting ??
0
 

Author Comment

by:patrickkenney
ID: 11835369
Well, I figured out what I was doing wrong, but now only the first page of the bitmap shows up when pulled out of the database? Any ideas? Thanks!
0
 
LVL 18

Expert Comment

by:DotNetLover_Baan
ID: 11835451
what do you mean by >>"first page of the bitmap "<< ??
0
 

Author Comment

by:patrickkenney
ID: 11835508
Eh, just not my day. Was one of those ID10T errors. Thanks for you help!!!
0

Featured Post

Use Case: Protecting a Hybrid Cloud Infrastructure

Microsoft Azure is rapidly becoming the norm in dynamic IT environments. This document describes the challenges that organizations face when protecting data in a hybrid cloud IT environment and presents a use case to demonstrate how Acronis Backup protects all data.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Gridview selected row 9 46
Help with error when uploading excel file 3 28
SqlServer no dupes 25 34
Winform Module - What is the ASP.Net equiv 2 20
A while ago, I was working on a Windows Forms application and I needed a special label control with reflection (glass) effect to show some titles in a stylish way. I've always enjoyed working with graphics, but it's never too clever to re-invent …
Microsoft Reports are based on a report definition, which is an XML file that describes data and layout for the report, with a different extension. You can create a client-side report definition language (*.rdlc) file with Visual Studio, and build g…
This Micro Tutorial will give you a basic overview how to record your screen with Microsoft Expression Encoder. This program is still free and open for the public to download. This will be demonstrated using Microsoft Expression Encoder 4.
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…

773 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question