-
MS-SQL에 이미지 저장과 이미지 불러오기Full-Stack/Back-end 2008. 4. 16. 09:19
'출처-sqler.pe.kr
http://sqler.pe.kr/web_board/view_list.asp?id=76384&read=225&pagec=&gotopage=&block=&part=myboard1전에 이미지를 님과 같이 테이블 컬럼에 넣는 작업을 했었는데요. 그때는 tabs upload라는 컴포넌트를 이용해서 했습
니다. 다음 예제를 참고하세요.
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[UploadFile]') and OBJECTPROPERTY(id,
N'IsUserTable') = 1)
drop table [dbo].[UploadFile]
GO
CREATE TABLE [dbo].[UploadFile] (
[id] [int] IDENTITY (1, 1) NOT NULL ,
[filename] [varchar] (50) COLLATE Korean_Wansung_CI_AS NOT NULL ,
[filedata] [image] NULL ,
[body] [text] COLLATE Korean_Wansung_CI_AS NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
<%@ Language=VBScript %>
<% Option Explicit
'-----------------------------------------------------------------------
'TABS Upload Example: Database Upload
'
'--- Copyright (c) 2003 TABS Laboratories Corporation
'--- Mail: help@tabslab.com WWW: http://www.tabslab.com
'-----------------------------------------------------------------------
%>
<html>
<head>
<title>데이터베이스 업로드 예제</title>
</head>
<body>
<%
Dim Upload
'업로드를 처리할 오브젝트를 생성합니다.
Set Upload = Server.CreateObject("TABS.Upload")
'업로드를 시작합니다.
Upload.Start "C:\TEMP"
'첨부 파일이 있을 경우 데이터베이스에 저장합니다.
If Upload.Form("uploadFile").FileSize <> 0 Then
Dim ConnStr, Rs, SQL
'데이터베이스 연결 문자열을 수정해야 합니다.
ConnStr = "PROVIDER=SQLOLEDB;Password=;User ID=;Initial Catalog=;Data Source="
'ADO 레코드셋 오브젝트를 생성합니다.
Set Rs = Server.CreateObject("ADODB.Recordset")
SQL = "UploadFile"
Rs.Open SQL, ConnStr, 1, 3
Rs.AddNew
'"filename" 필드를 기록한다.
Rs("filename") = Upload.Form("uploadFile").FileName
Rs("body") = "테스트 업로드 입니다."
'업로드된 파일 데이터를 "filedata" 필드에 기록한다.
Upload.Form("uploadFile").SaveAsBlob Rs("filedata")
Rs.Update
Rs.Close
Response.Write "저장이 완료 되었습니다."
Else
Response.Write "업로드된 파일이 없습니다."
End If
Set Upload = Nothing
%>
</body>
</html>############################################################################
출처 : msdnFILE: SHOWIMG.ASP
<%@ LANGUAGE="VBSCRIPT" %>
<%
' Clear out the existing HTTP header information
Response.Expires = 0
Response.Buffer = TRUE
Response.Clear
' Change the HTTP header to reflect that an image is being passed.
Response.ContentType = "image/gif"
Set cn = Server.CreateObject("ADODB.Connection")
' The following open line assumes you have set up a System DataSource
' by the name of myDSN.
cn.Open "DSN=myDSN;UID=sa;PWD=;DATABASE=pubs"
Set rs = cn.Execute("SELECT logo FROM pub_info WHERE pub_id='0736'")
Response.BinaryWrite rs("logo")
Response.End
%>
위의 스크립트는 화면에 이미지만을 보여준다. HTML이나 ASP 문서로부터 이미지를 보여주려고 한다면 <IMAGE> 태그 안에 위의 파일을 참조한다.예를 들어, 이미지를 이 이미지를 설명하는 텍스트와 함께 화면에 나타내려면 다음과 같은 HTML페이지를 사용한다.댓글