有问题

来源:互联网 发布:mac菜单快捷键 编辑:程序博客网 时间:2024/04/26 14:47

DECLARE @myRecordset int,@Stream int,@Len int,@i int,@nRet int --定义记录集,文件长度
DECLARE @value binary(8000)                      --存放数据
DECLARE @constr varchar(200),@sql varchar(200)
declare @filename varchar(200)
set @constr='Provider=SQLOLEDB;Data Source=(local);Initial Catalog=master;Integrated Security=SSPI;'
set @sql='select * from temptable'

EXEC @nRet = sp_OACreate 'ADODB.Recordset',@myRecordset OUT
if @nRet <> 0
begin
 print 'sss'
 EXEC sp_OAGetErrorInfo @myRecordset
end

EXEC @nRet = sp_OAMethod @myRecordset,'open',null,@sql,@constr

if @nRet <> 0
begin
 print 'dddd'
 EXEC sp_OAGetErrorInfo @myRecordset
end
/*
EXEC @nRet=sp_OAGetProperty @myRecordset, 'Fields.item(0).value',@filename out   --取出上传的文件名
if @nRet <> 0
begin
 print 'dddd'
 EXEC sp_OAGetErrorInfo @myRecordset
end
*/
print @filename
/*
print @filename

  EXEC sp_OAGetProperty @myRecordset, 'Fields.item(1).ActualSize',@len out
  EXEC sp_OACreate 'ADODB.Stream', @Stream OUT                                --建立数据流
  EXEC sp_OASetProperty @Stream, 'mode',3                                  --读/写状态
  EXEC sp_OASetProperty @Stream, 'type',1                                        --1是流 2是文本
  EXEC sp_OAMethod @Stream,'open'                                                --打开流
  set @i=0
  while @Len > @i                                                               --循环写入数据
   begin
    EXEC sp_OAGetProperty @myRecordset, 'Fields.item(1).GetChunk', @Value OUT,8000
    EXEC sp_OAMethod @Stream,'write',null,@Value                                   --写入流
    set @i=@i+8000
   end
  EXEC sp_OASetProperty @Stream,'Position',@Len                                 --移动数据到结尾处
  EXEC sp_OAMethod @Stream,'SetEos'                                                --截断数据
  set @filename='c:/' + @filename                                             --保存路径,不设置将存储在SYSTEM32下面
  print @filename
  EXEC sp_OAMethod @Stream,'SaveToFile',null,@filename,2                        --保存为文件
  exec sp_OADestroy @myRecordset
  exec sp_OADestroy @Stream  */
--  select utput='命令成功'

原创粉丝点击