Microsoft
Software
Hardware
Network
Question : How to insert a single blob?
Hello,
I inserted a picture into an image field in SQL server using following query.
UPDATE dbo.Photo SET Document =
(SELECT * FROM
OPENROWSET(BULK 'C:\Pictures\Lighthouse.jp
g', SINGLE_BLOB) AS ORS)
When i render this image in an ASP.NET web page it works fine. I use this code block:
var photoQuery = (from inp in db.Photos
select new { Id = inp.ID, Document = inp.Document, Name = inp.ID });
foreach (var item in photoQuery)
{
Photo photo = new Photo();
byte[] picture = (byte[])(item.Document);
MemoryStream ms = new MemoryStream(picture);
System.Drawing.Image image = System.Drawing.Image.FromS
tream(ms);
photo.Listing_ID = item.Id;
photo.Name = item.Name.ToString();
using (var memoryStream = new MemoryStream())
{
image.Save(memoryStream, ImageFormat.Jpeg);
photo.Data = memoryStream.ToArray();
}
images.Add(photo);
}
until this point everything works fine.
but when i look in the field in SQL server i see a long binary hexidecimal string. These are the first few characters:
0xFFD8FFE000104A4649460001
0100000100
010000FFFE
003E43524
Now what i'm attempting to do is to copy that last piece of data as a string into the image field in SQL server. I test this by doing:
UPDATE dbo.tbl_InspectionPhoto set INP_Document =
'0xFFD8FFE000104A464946000
1010000010
0010000FFF
E003E43524
'
when i refresh my asp.net page, i get an error on System.Drawing.Image image = System.Drawing.Image.FromS
tream(ms):
The parameter is not valid.
Any help would be greatly appriciated.
Thanks in advance,
MA
Answer : How to insert a single blob?
Don't use quotes around the hex string. It is not a text string, but hex encoded binary data.
Random Solutions
creating image using coldfusion
windows XP - Multimedia Audio Controller missing - drivers?
centOS VPS setup - Domain name setup
VPN 721 error
Web site works using IP but not Localhost
publishing websites in TMG 2010
how to implement virtual mode in the DataGridView control?
IIS Web site works in all browsers except Safari on Mac
Asp.Net I need help. I am not passing Date values to my the Conrol Parameters?? in a SqlDatasource using Ajax
visual studio 2008 installation issue