2014-11-22 4 views
0

Я экспортирует таблицу с сервера SQL в Excel с помощью sp_addlinkedserverЭкспорт Excel с SQL Server не используя связанный сервер

exec sp_addlinkedserver @MYTABLE, 
         @srvproduct='', 
         @provider = 'Microsoft.ACE.OLEDB.12.0', 
         @datasrc= @MYFILENAME, 
         @provstr = 'Excel 12.0 XML;HDR=YES' 

.... 


exec sp_dropserver @MYTABLENAME, 'droplogins' 

И это работает, как ожидалось

Но файл XLSX продолжает открыто до хранимой процедуры возвращает

После экспорта таблицы я должен был отправить его в качестве приложения к клиенту, но так как файл открыт, отправки электронной почты не удается

Я тестировал это серверное время, и он на 100% уверен, что файл закрыт только после завершения процедуры, droperver недостаточно, чтобы закрыть его.

У кого-нибудь есть ключ к тому, как закрыть файл?

ТИА

ответ

0

Может быть, вы можете заключить этот прок в другой прок, который отправляет электронную почту, таким образом, эта процедура закончится, и освободить файл?

Или вы можете отказаться от сервера перед отправкой по электронной почте?

+0

Прок, который экспортирует таблицу, вызывается «основным» процессом, и он заканчивается нормально. Следующий шаг - отправить файл, но файл закрывается только при завершении самой последней процедуры. Я посылаю вызов sp_dropserver перед отправкой электронной почты. – user2974686

Смежные вопросы