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

Откуда: Ukraine, Kyev
Сообщений: 835
Sql Server 2008
Делаем Bulk Insert приложенной картинки.

Ноль строк вставляется, но и ошибок нет.
WTF? Тестеры в шоке. Из-за чего это.

таблица
CREATE TABLE [dbo].[ImportDealerDisctrict](
      [AccountNumber] [nchar](8) NOT NULL,
      [DisctrictCode] [nvarchar](10) NOT NULL,
 CONSTRAINT [PK_ImportDealerDisctrict] PRIMARY KEY CLUSTERED 
(
      [AccountNumber] ASC,
      [DisctrictCode] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]

команда

BULK INSERT ImportDealerDisctrict FROM '\\cmslsql01\SCSSImport\ImportDealerDisctrict\2.png' WITH 
(FIRSTROW = 2, FIELDTERMINATOR = ';', ROWTERMINATOR = '\n', MAXERRORS=0)

результат


(0 row(s) affected)


Почему? Можно ли заставить BULK INSERT ругаться на такие файлы?

К сообщению приложен файл. Размер - 0Kb
11 дек 09, 14:17    [8053559]     Ответить | Цитировать Сообщить модератору
 Re: Почему Bulk Insert картинки проходит без проблем?  [new]
Glory
Member

Откуда:
Сообщений: 104760
А FIRSTROW = 2 кто додумался поставить ?
11 дек 09, 14:21    [8053593]     Ответить | Цитировать Сообщить модератору
 Re: Почему Bulk Insert картинки проходит без проблем?  [new]
kto-to
Member

Откуда: Ukraine, Kyev
Сообщений: 835
Glory,

А в чем проблема? Там хиадер в номальном файле идет.
11 дек 09, 14:22    [8053599]     Ответить | Цитировать Сообщить модератору
 Re: Почему Bulk Insert картинки проходит без проблем?  [new]
Glory
Member

Откуда:
Сообщений: 104760
kto-to
Glory,

А в чем проблема? Там хиадер в номальном файле идет.

Какой еще хедер ?
Первый сивол ROWTERMINATOR = '\n' у вас где в файле находится ?
11 дек 09, 14:23    [8053613]     Ответить | Цитировать Сообщить модератору
 Re: Почему Bulk Insert картинки проходит без проблем?  [new]
kto-to
Member

Откуда: Ukraine, Kyev
Сообщений: 835
Glory,

пример павильного файла

AccNum;DisctrCode
12345678; 01
824; 05
11 дек 09, 14:27    [8053646]     Ответить | Цитировать Сообщить модератору
 Re: Почему Bulk Insert картинки проходит без проблем?  [new]
Glory
Member

Откуда:
Сообщений: 104760
kto-to
Glory,

пример павильного файла

AccNum;DisctrCode
12345678; 01
824; 05

А как этот файл относится к том, что вы привели в первом сообщении ? И причем тут "картинка" ?
11 дек 09, 14:29    [8053674]     Ответить | Цитировать Сообщить модератору
 Re: Почему Bulk Insert картинки проходит без проблем?  [new]
kto-to
Member

Откуда: Ukraine, Kyev
Сообщений: 835
Glory
kto-to
Glory,

пример павильного файла

AccNum;DisctrCode
12345678; 01
824; 05

А как этот файл относится к том, что вы привели в первом сообщении ? И причем тут "картинка" ?


Есть команда BULK Insert предназначенная для импорта файла в определенном формате (пример правильного файла смотри в одном из моих постов). Проблема в том, что когда тестер подсовывает картинку(смотри прикрепленное изображение к первому моему посту) вместо нормального файла мы не получаем никакой ошибки, хотя файл явно не соответствует формату. Вот тестеры и удивляются как это так импорт неправильного по формату файла проходит без единой ошибки.
11 дек 09, 14:35    [8053743]     Ответить | Цитировать Сообщить модератору
 Re: Почему Bulk Insert картинки проходит без проблем?  [new]
Glory
Member

Откуда:
Сообщений: 104760
kto-to


Есть команда BULK Insert предназначенная для импорта файла в определенном формате (пример правильного файла смотри в одном из моих постов). Проблема в том, что когда тестер подсовывает картинку(смотри прикрепленное изображение к первому моему посту) вместо нормального файла мы не получаем никакой ошибки, хотя файл явно не соответствует формату. Вот тестеры и удивляются как это так импорт неправильного по формату файла проходит без единой ошибки.

Ну тогда опять вопросы

FIRSTROW = 2 кто додумался поставить ?
И
Первый сивол ROWTERMINATOR = '\n' у вас где в файле с картинкой находится ?
11 дек 09, 14:39    [8053801]     Ответить | Цитировать Сообщить модератору
 Re: Почему Bulk Insert картинки проходит без проблем?  [new]
kto-to
Member

Откуда: Ukraine, Kyev
Сообщений: 835
Glory

Ну тогда опять вопросы

FIRSTROW = 2 кто додумался поставить ?
И
Первый сивол ROWTERMINATOR = '\n' у вас где в файле с картинкой находится ?


ммммммм
1) пусть буду я..
2) если импортировать в таблицу с одной колонкой nvarchar(max) получается что в файле 4 строки. в первой строке он 5-й.
11 дек 09, 14:43    [8053841]     Ответить | Цитировать Сообщить модератору
 Re: Почему Bulk Insert картинки проходит без проблем?  [new]
Glory
Member

Откуда:
Сообщений: 104760
kto-to
Glory

Ну тогда опять вопросы

FIRSTROW = 2 кто додумался поставить ?
И
Первый сивол ROWTERMINATOR = '\n' у вас где в файле с картинкой находится ?


ммммммм
1) пусть буду я..
2) если импортировать в таблицу с одной колонкой nvarchar(max) получается что в файле 4 строки. в первой строке он 5-й.

Открываем хелп и читаем

FIRSTROW = first_row
Specifies the number of the first row to load. The default is the first row in the specified data file.

Note:
The FIRSTROW attribute is not intended to skip column headers. When skipping rows, the SQL Server Database Engine looks only at the field terminators, and does not valid the data in the fields of skipped rows.
11 дек 09, 14:46    [8053875]     Ответить | Цитировать Сообщить модератору
 Re: Почему Bulk Insert картинки проходит без проблем?  [new]
kto-to
Member

Откуда: Ukraine, Kyev
Сообщений: 835
* поправка. Получается две строки вместе с хиадером.

/****** Object:  Table [dbo].[TempTable]    Script Date: 12/11/2009 13:47:20 ******/
CREATE TABLE [dbo].[TempTable](
	[q] [nvarchar](max) NULL
) 
11 дек 09, 14:47    [8053900]     Ответить | Цитировать Сообщить модератору
 Re: Почему Bulk Insert картинки проходит без проблем?  [new]
kto-to
Member

Откуда: Ukraine, Kyev
Сообщений: 835
Glory

....
Note:
The FIRSTROW attribute is not intended to skip column headers. When skipping rows, the SQL Server Database Engine looks only at the field terminators, and does not valid the data in the fields of skipped rows.


Спасибо конечно, но неужели это было так трудно сразу сказать.
11 дек 09, 14:54    [8053985]     Ответить | Цитировать Сообщить модератору
 Re: Почему Bulk Insert картинки проходит без проблем?  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36799
kto-to
Glory

....
Note:
The FIRSTROW attribute is not intended to skip column headers. When skipping rows, the SQL Server Database Engine looks only at the field terminators, and does not valid the data in the fields of skipped rows.


Спасибо конечно, но неужели это было так трудно сразу сказать.
А нельзя это было сразу прочитать, что бы говорить вообще не пришлось?
11 дек 09, 15:00    [8054066]     Ответить | Цитировать Сообщить модератору
 Re: Почему Bulk Insert картинки проходит без проблем?  [new]
Glory
Member

Откуда:
Сообщений: 104760
kto-to
Glory

....
Note:
The FIRSTROW attribute is not intended to skip column headers. When skipping rows, the SQL Server Database Engine looks only at the field terminators, and does not valid the data in the fields of skipped rows.


Спасибо конечно, но неужели это было так трудно сразу сказать.

А "сразу" - это когда ? Когда вы опубликовали картинку ?
11 дек 09, 15:05    [8054141]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить