Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как обрабатывать файлы внутри SQL-процедуры находящиеся где нибуть в дирректории  [new]
Alex Brown
Member [заблокирован]

Откуда:
Сообщений: 776
Надо обрабатывать файлы внутри SQL-процедуры, находящиеся где нибуть в дирректории на диске.
Загоняю по ftp в локальную папку CSV, XLS-файлы, которые считываю с определенным интервалом.
потом надо их рассортировать и импортировать в таблицы в MSSQL.
все делается... только не догнал еще как делать селекцию файлов с процедуры.
? есть только способ через xp_cmdshell..
например загнать в таблицу с командой

DECLARE @cmd varchar(1000)
select @cmd = ' dir  *.xls' + '' + ' >> 1.csv ' 
EXEC master..xp_cmdshell @cmd


потом импортиривать 1.csv в таблицу и построчно обрабатывать вытягивая имена файлов...

или есть какой нибуть более приемлемый способ?

(в частности сама DOS -команда для xp_cmdshell даeт много мусора в файл.. может есть какая то более еффективная komanda DOS чтоб получить просто имена без даты и.т.д?)
7 фев 12, 15:49    [12047846]     Ответить | Цитировать Сообщить модератору
 Re: Как обрабатывать файлы внутри SQL-процедуры находящиеся где нибуть в дирректории  [new]
dvim
Member

Откуда: Санкт Петербург
Сообщений: 711
Alex Brown,

CLR вас спасет.
В ней спокойно пишете получение файлов и возвращаете это в табличном виде.
7 фев 12, 15:58    [12047943]     Ответить | Цитировать Сообщить модератору
 Re: Как обрабатывать файлы внутри SQL-процедуры находящиеся где нибуть в дирректории  [new]
bacalavr
Member

Откуда:
Сообщений: 311
Прочитать названия файлов в директории сервера
7 фев 12, 16:02    [12047983]     Ответить | Цитировать Сообщить модератору
 Re: Как обрабатывать файлы внутри SQL-процедуры находящиеся где нибуть в дирректории  [new]
iljy
Member

Откуда:
Сообщений: 8711
Alex Brown,

DECLARE @cmd varchar(1000)
declare @t table(f varchar(max))
select @cmd = 'dir /b *.xls' 
insert @t EXEC master..xp_cmdshell @cmd

select * from @t
7 фев 12, 16:06    [12048024]     Ответить | Цитировать Сообщить модератору
 Re: Как обрабатывать файлы внутри SQL-процедуры находящиеся где нибуть в дирректории  [new]
Alex Brown
Member [заблокирован]

Откуда:
Сообщений: 776
большое спасибо всем за компетентную поддержку!
7 фев 12, 16:28    [12048292]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить