2013-07-13 3 views
0

Я пытаюсь вставить BULK в sql server 2008 и получить сообщение об ошибке в столбце Date. ОшибкаОшибка в BULK insert date

SET DATEFORMAT dmy 

BULK 
INSERT CustomSelection 
FROM 'c:\test.csv' 
WITH 
(
FIRSTROW = 2, 
FIELDTERMINATOR = ',', 
ROWTERMINATOR = '\n' 
) 

Массовое преобразование данных нагрузки (несоответствие типов или недопустимый символ для указанной кодовой страницы) для строки 2, колонка 1 (Дата).

Это дата в формате .csv: 18/08/2012. Любые идеи, как это решить?

ответ

0

Ваш формат даты недействителен, так что сервер sql дает ошибку.

Для решения этих проблем необходимо выполнить следующие действия: 1. Импортировать csv в таблицу базы данных, столбец таблицы должен быть varchar, это не должно быть datetime. 2. Затем запустите следующий запрос, чтобы найти недопустимые даты.

select inserteddate from table where isdate(inserteddate) = 0 

3. затем обновить эти даты вручную или обновления запроса что-то вроде:

UPDATE TABLE1 
SET INSERTEDDATE = CONVERT(DATETIME , '18/08/2012' , 105) 
WHERE INSERTEDDATE = '18/08/2012'