Home All Groups Group Topic Archive Search About

Extracting image column to the file

Author
29 Sep 2005 8:25 PM
Gene
Hello all,

how can I extract image strored in DB in to file?

Will something like this work?

DECLARE @cmd VARCHAR(2048)

SET @cmd = 'bcp select history_image from recipient where recipient_id = 1
queryout c:\test\625954.jpg '

EXEC master..xp_cmdshell @cmd, NO_OUTPUT

Author
29 Sep 2005 8:31 PM
oj
You want to use TextCopy.

e.g.
--OJ: TEXTCOPY example
-- Loading txt files into db


--create tb to hold data
create table tmp(fname varchar(100),txt text default '')
go
declare @sql varchar(255),
@fname varchar(100),
@path varchar(50)


--specify desired folder
set @path='c:\test\'


set @sql='dir ' + @path + '*.txt /c /b'


--insert filenames into tb
insert tmp(fname)
exec master..xp_cmdshell @sql


--loop through and insert file contents into tb
declare cc cursor
for select fname from tmp


open cc
fetch next from cc into @fname


while @@fetch_status=0
begin
set @sql='textcopy  /s"dev" /d"tempdb" /t"tmp" /c"txt" /w"where
fname=''' + @fname + '''"'
set @sql=@sql + ' /f"' + @path + @fname + '" /i'
print @sql
exec master..xp_cmdshell @sql,no_output
fetch next from cc into @fname
end
close cc
deallocate cc
go
select * from tmp
go
drop table tmp
go




--
-oj


Show quote
"Gene" <G***@discussions.microsoft.com> wrote in message
news:DDDCCF4D-23B1-4348-9740-47A7738C9E36@microsoft.com...
> Hello all,
>
> how can I extract image strored in DB in to file?
>
> Will something like this work?
>
> DECLARE @cmd VARCHAR(2048)
>
> SET @cmd = 'bcp select history_image from recipient where recipient_id = 1
> queryout c:\test\625954.jpg '
>
> EXEC master..xp_cmdshell @cmd, NO_OUTPUT

AddThis Social Bookmark Button