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

Откуда:
Сообщений: 36
Добрый день, есть текстовый файл выписки , нужно записать его в таблицу.
Пробовала так:
Первый вариант:
EXEC('BULK INSERT bux_stok
FROM ''\\DateBase\bux_input\bux.txt''
WITH (CODEPAGE = ''1251'',ROWTERMINATOR = ''\n'')') - работает, но строки импортирует не попорядку. После добавления в табл bux_stok поле со счетчиком, перестает работать.
Второй вариант:
EXEC(INSERT INTO bux_stok(Column0)
SELECT * FROM OPENROWSET(
BULK ''\\DateBase\\bux_input\bux.txt'',
SINGLE_CLOB) AS x') -- на поле со счетчиком не ругается, но записывает весь файл в одну строку, (а файлы большие, всё обрезает)
Что можно исправить, чтобы импортировалось не в одну строку, но строчки не перемешивались. Заранее благодарна.
17 май 11, 13:57    [10664540]     Ответить | Цитировать Сообщить модератору
 Re: чтение .txt файла в таблицу  [new]
Alexandr Kr.
Member

Откуда: Украина, Харьков
Сообщений: 165
italiy555,

посмотреть в сторону использования FORMATFILE
17 май 11, 13:59    [10664555]     Ответить | Цитировать Сообщить модератору
 Re: чтение .txt файла в таблицу  [new]
italiy555
Member

Откуда:
Сообщений: 36
Alexandr Kr.,
читала про него, но не поняла, как создать этот файл и где его хранить
17 май 11, 14:09    [10664624]     Ответить | Цитировать Сообщить модератору
 Re: чтение .txt файла в таблицу  [new]
mike909
Member

Откуда:
Сообщений: 662
italiy555,

В качестве неправильного варианта:
DECLARE @cmd varchar(8000), @FileName sysname;
set @FileName = 'c:\Temp\qq.txt'
SET @cmd = N'type "' + @FileName + '"'
create table #t( id int identity(1,1), Line nvarchar(100) )
insert into #t( Line ) EXEC xp_cmdshell @cmd
select *
from #t
drop table #t
17 май 11, 14:28    [10664755]     Ответить | Цитировать Сообщить модератору
 Re: чтение .txt файла в таблицу  [new]
Glory
Member

Откуда:
Сообщений: 104751
italiy555
Alexandr Kr.,
читала про него, но не поняла, как создать этот файл и где его хранить

Создавать - руками
Хранить там, откуда его сможет прочитать команда BULK INSERT
17 май 11, 14:36    [10664836]     Ответить | Цитировать Сообщить модератору
 Re: чтение .txt файла в таблицу  [new]
italiy555
Member

Откуда:
Сообщений: 36
спасибо всем, выкрутилась более простым способом,
создала представление на основе табл со счетчиком, не включая его, и воспользовалась первым своим способом. Отработало, в данных кот. было несоответствие, всё верно, буду дальше проверять.
17 май 11, 14:52    [10664989]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить