导出northwind中employees的图像.sql

来自「SQLServer2000常用函数大全(经典)」· SQL 代码 · 共 31 行

SQL
31
字号
--用下面的方法导出就可以保证导出标准的图片文件

declare @id int,@fn nvarchar(260),@tmpfn nvarchar(260)
select @id=2				--要导出的employeeid
	,@fn='c:\test.bmp'		--导出生成的文件名
	,@tmpfn='c:\tmp.bak'	--导出过程中使用的临时文件名

--生成临时表,控制取消图片数据中的前缀
create table ##tb(img image)
insert into ##tb
select photo from northwind..Employees where employeeid=@id

--删除前缀处理
declare @p varbinary(16)
select @p=textptr(img) from ##tb
updatetext ##tb.img @p 0 78 null

--导出数据
declare @sql varchar(8000)
set @sql='bcp "select * from(select null as 类型 union all select 0 as 前缀 union all select 0 as 长度 union all select null as 结束 union all select null as 格式) a" queryout "'
	+@tmpfn+'" /c /S"zj" /P""'
exec master..xp_cmdshell @sql,no_output

set @sql='bcp ##tb out "'+@fn+'" /S"zj" /P"" /i"'+@tmpfn+'"'
exec master..xp_cmdshell @sql,no_output

set @sql='del '+@tmpfn
exec master..xp_cmdshell @sql,no_output
go
drop table ##tb

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?