Сохранить возврат каретки, когда BULK_INSERTING .csv в SQL Server 2008 (Express) - PullRequest
1 голос
/ 14 марта 2012

Я экспортирую данные из моей старой базы данных о найме в новую, чтобы сэкономить на вымогательских расходах.Я почти все использую BULK_INSERT (у меня нет полноценной службы SSIS с SQL Server 2008 Express, а в мастере импорта / экспорта нет опции KEEP NULL, которая важна для меня, поэтому я оставил BULK_INSERT)все хорошо выглядит с моей панелью .csv и BULK_INSERT в одной надоедливой колонке.Столбец назначения в одной таблице (клиент), в которую я импортирую: -

Client_Notes (ntext, null)

Я использую следующий синтаксис для вставки: -

BEGIN TRAN SAJ
BULK INSERT Client
FROM 'c:\MAIN SHARE\IMPORT TEST.csv'
WITH
(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n',
FIRSTROW = 2,
KEEPNULLS
)
GO
-- COMMIT TRAN SAJ
--ROLLBACK TRAN SAJ

Теперь данныев моем .csv для этого столбца будет иметь такую ​​природу: -

abc
123
45
67891011121314

Когда он импортируется, он выглядит так: -

abc1234567891011121314

, а также имеет забавные символы, где кареткавозвраты были и где усекли.Есть ли способ сохранить форматирование в этом столбце при импорте?Я слышал о необходимости использовать «файл формата», но не могу найти подробную информацию о том, что мне нужно делать именно здесь.

Справка.

1 Ответ

0 голосов
/ 14 марта 2012

Попробуйте это:

FIELDTERMINATOR = ';',

Если это не работает, откройте файл .csv с помощью notepad / ultraedit и опубликуйте его содержимое в своем вопросе.

...