This week's book giveaway is in the Reactive Progamming forum.
We're giving away four copies of Reactive Streams in Java: Concurrency with RxJava, Reactor, and Akka Streams and have Adam Davis on-line!
See this thread for details.
Win a copy of Reactive Streams in Java: Concurrency with RxJava, Reactor, and Akka Streams this week in the Reactive Progamming forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
  • Campbell Ritchie
  • Liutauras Vilda
  • Junilu Lacar
  • Jeanne Boyarsky
  • Bear Bibeault
  • Knute Snortum
  • Tim Cooke
  • Devaka Cooray
Saloon Keepers:
  • Ron McLeod
  • Stephan van Hulst
  • Tim Moores
  • Tim Holloway
  • Carey Brown
  • Piet Souris
  • Frits Walraven
  • Ganesh Patekar

storing images in database

Posts: 5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
hai friends,
kindly tell me how to store images on database for eg in MS SQL server
Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Linking to Images
The best way for SQL Server to deal with images is for SQL Server to store a pointer to an image. This can be a file name, directory/file combination or URL. The actual image can be stored on the file system or on the web server. It's very easy to write ASP code to build an IMG tag. The tag is customized with the file name pulled from the database. I'll walk through an example of this using ASP. For example, I have code to select a banner image and display it. My table looks something like this:
[AdId] [int] IDENTITY (1, 1) NOT NULL ,
[AdName] [char] (100) NOT NULL ,
[AdType] [char] (10) NOT NULL ,
[ImageURL] [varchar] (100) NULL ,
[Height] [smallint] NULL ,
[Width] [smallint] NULL ,
[ALTText] [varchar] (100) NULL ,
[HTML] [varchar] (2000) NULL ,
[LinkToURL] [varchar] (100) NULL ,
The SELECT statement is also pretty basic:
WHERE AdId = 17
And here is the ASP script to generate the IMG tag. Response.Write ""
Response.Write "<IMG SRC=" & trim(bobjRS("ImageURL")) & " BORDER=0 "<br /> Response.Write " WIDTH=" & trim(bobjRS("Width"))<br /> Response.Write " HEIGHT=" & trim(bobjRS("Height")) <br /> Response.Write " ALT=" & Chr(34) & trim(bobjRS("ALTText")) & Chr(34)<br /> Response.Write ">

I actually wasn't very smart when I wrote this. My image URL is a fully qualified URL with the domain name, path and file. The most flexable approach would be to split those fields out. That way if code ever moves to a new domain it's easy to update. That's a minor problem though. Visual Basic would handle this just a little differently. After creating an image/picture object on the form you code set it's source to the location and filename of your image. I think Visual Basic requires path names as opposed to URL's for it's image locations. My VB days are far in the past. If someone has a few lines of sample code I'd be happy to post it here.
SELECTing Images
Now we'll retrieve images from SQL Server using ASP. In case you've forgotten (or I didn't mention it enough above) this is really a pain. You are going to need two separate ASP Pages. This code will pulled from a Microsoft Knowledge Base article. The first I called Picture.asp and it looks like this:
<HEAD><TITLE>Display Image</TITLE></HEAD>
This page will display the image New Moon Books from a SQL Server 6.5
image field.

This calls the ASP page PicShowImage.asp which looks like this:
<%<br /> ' Clear out the existing HTTP header information<br /> Response.Expires = 0<br /> Response.Buffer = TRUE<br /> Response.Clear<br /> ' Change the HTTP header to reflect that an image is being passed.<br /> Response.ContentType = "image/gif"<br /> Set cn = Server.CreateObject("ADODB.Connection")<br /> ' The following open line assumes you have set up a System DataSource<br /> ' by the name of myDSN.<br /> cn.Open "Provider=SQLOLEDB; Data Source=server9; Initial Catalog=pubs; User ID=sa; Password="<br /> Set rs = cn.Execute("SELECT logo FROM pub_info WHERE pub_id='0736'")<br /> Response.BinaryWrite rs("logo")<br /> Response.End<br /> %>

We don't have time to be charming! Quick, read this tiny ad:
Building a Better World in your Backyard by Paul Wheaton and Shawn Klassen-Koop
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!