Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3   вперед  Ctrl      все
 Re: OpenRowset Ms Sql 2012  [new]
o-o
Guest
наверное сложили файл туда, куда нет доступа у серверного аккаунта,
а у вашего есть.
дайте серверной учетке права на формат-файл, тогда и xp_cmdshell получит ту же ошибку, что и вы
18 сен 15, 16:34    [18166746]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Masyny23
Member

Откуда:
Сообщений: 47
А как с ошибкой бороться? Просто, с такими задачами еще не сталкивалась. Может не верные параметры указываю, тогда какие надо. . . а вот стандартный импорт загружает файл без проблем. . .
18 сен 15, 16:46    [18166844]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
o-o
Guest
Masyny23
...стандартный импорт загружает файл без проблем. . .

и чем вам не нравится сгенеренное визардом?
тем более, если у вас куча файлов?
сохраните сгенеренный пакет, переделайте его под массовую загрузку,
сложите все в Foreach Loop Container,
в нем перебирайте свои файлы.
наверняка все это гуглится на этот самый Foreach Loop Container,
найдите пошагово с картинками и реализуйте
18 сен 15, 16:56    [18166930]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2423
Masyny23
А как с ошибкой бороться? Просто, с такими задачами еще не сталкивалась. Может не верные параметры указываю, тогда какие надо. . . а вот стандартный импорт загружает файл без проблем. . .


чето мне хрустальный шар говорит, что Вы путаете c:\ ваш локальный с c:\ серверным, хотя седня пятница и шар как всегда уже слегка мутный.
18 сен 15, 16:57    [18166938]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Masyny23
Member

Откуда:
Сообщений: 47
У меня с:\ локальный совпадает с С:\ серверным ))) и exec master..xp_cmdshell 'dir' файлы видит (((((
18 сен 15, 17:02    [18166979]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
o-o
Guest
WarAnt
Masyny23
А как с ошибкой бороться? Просто, с такими задачами еще не сталкивалась. Может не верные параметры указываю, тогда какие надо. . . а вот стандартный импорт загружает файл без проблем. . .


чето мне хрустальный шар говорит, что Вы путаете c:\ ваш локальный с c:\ серверным, хотя седня пятница и шар как всегда уже слегка мутный.

ну привет, она ж кладет в одно и то же место, а вот доступ то есть, то нет, смотря кто выполняет
18 сен 15, 17:03    [18166992]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Masyny23
Member

Откуда:
Сообщений: 47
Наверное сегодня пятница((((
Ну а еще можно глупый вопрос. . . как можно увидеть, то что генерирует визард? и есть ли документация пошаговая. . .
ибо то что генерирует визарт меня вполне устраивает. . .
18 сен 15, 17:14    [18167100]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
o-o
Guest
Masyny23
как можно увидеть, то что генерирует визард?

галочка там есть, сохраняете пакет и потом редактируете в VS.

К сообщению приложен файл. Размер - 23Kb
18 сен 15, 17:24    [18167153]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Masyny23
Member

Откуда:
Сообщений: 47
общем, посмотрела я и оказалась плохо когда не знал да еще и забыл)))) эта dtsx открывает в визио проект, в котором что-то можно редактировать, и в общем то что я почитала, разобраться можно, но долго, скорее всего не день и не два (тем более когда результат нужен еще "вчера").

Может есть у кого идеи, как загружать все таки через bcp.exe в чем ошиблась, какие параметры не правильно указала?
Дело-то все встало в загрузке файлов. . . . могу приложить пример загружаемого файла.
18 сен 15, 18:36    [18167527]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Masyny23
Member

Откуда:
Сообщений: 47
А еще что смутило делать через визио, в date flow, придется каждый день добавлять и изменять загружаемые файлы.
а я хочу что бы каждую ночь через процедуру генерировались нужные названия, файлы загружались, обрабатывались, бралась нужная информация и мусор удалялся, если нельзя их корректно открывать через OpenRowset (как в первом сообщении пример), думаю что в этом случае легче бы было не загружать, а на ходу избавляться от мусора, и загружать только те строчки которые нужны. . .
18 сен 15, 18:42    [18167551]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
o-o
Guest
Вы за все хватаетесь, но ничего не довлдите до конца. Добейте уже OPENROWSET, откройте статью в хэлпе, скопируйте оттуда пример с формат-файлом, формат-файл сложите туда же, где и файл с данными, раз там сервер все видит. Должно хоть это сработать
18 сен 15, 19:41    [18167756]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
o-o
Guest
Masyny23,
как там дела продвигаются?
а то давайте правда прицепите подобный файл с парой строк, загрузим.
18 сен 15, 22:15    [18168431]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Masyny23
Member

Откуда:
Сообщений: 47
Добрый день!

Все равно ни чего не получается. . .
Создала таблицу

Create table line
(Column0 varchar (50) null ,
Column1 varchar (50) null,
Column2 varchar (50) null )

Создала пример файла загрузки:

exec master..xp_cmdshell 'bcp Test.dbo.line format -nul -n -t ";" -r "\n" -f line.fmt -T'

файл загрузки во вложении.

Пытаюсь загрузить файл

exec master..xp_cmdshell 'bcp metro.dbo.line in C:\20150806_line_7.csv -T -f C:\Users\Administrator\line.fmt'

Выдает ошибки. . .

К сообщению приложен файл (20150806_line_7.csv - 42bytes) cкачать
21 сен 15, 10:53    [18174035]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Masyny23
Member

Откуда:
Сообщений: 47
exec master..xp_cmdshell 'bcp metro.dbo.line in C:\20150806_line_7.csv -T -f C:\Users\Administrator\line.fmt'

точнее вот так
exec master..xp_cmdshell 'bcp test.dbo.line in C:\20150806_line_7.csv -T -f C:\Users\Administrator\line.fmt'
21 сен 15, 11:06    [18174094]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Glory
Member

Откуда:
Сообщений: 104751
Y:\>bcp "DWH.dbo.T1" in c:\temp\20150806_line_7.csv -S Myserver -T -t; -r\n -c

Starting copy...

1 rows copied.
Network packet size (bytes): 4096
Clock Time (ms.) Total : 46 Average : (21.74 rows per sec.)
21 сен 15, 11:07    [18174098]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Masyny23
Member

Откуда:
Сообщений: 47
Спасибо Glory, одна строка загрузилась, а если в документе много строк какую команду необходимо указывать?

При такой команде bcp Test.dbo.line in C:\20150806_line_7.csv -SWIN-ACV -T -t";" -r"\n" -c

Загрузилась строка

При такой команде (много строк)
bcp Test.dbo.line in C:\20150808_line_9.csv -SWIN-ACVG2TLP9E5 -T -t";" -r"\n" -c

Вылетела ошибка:

output
NULL
Starting copy...
SQLState = S1000, NativeError = 0
Error = [Microsoft][SQL Server Native Client 11.0]Unexpected EOF encountered in BCP data-file
NULL
0 rows copied.
Network packet size (bytes): 4096
Clock Time (ms.) Total : 594
NULL
21 сен 15, 13:09    [18174876]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Masyny23
Member

Откуда:
Сообщений: 47
Сори, при такой
bcp Test.dbo.line in C:\20150808_line_9.csv -SWIN-ACV -T -t";" -r"\n" -c

Ошибка:

output
NULL
Starting copy...
SQLState = S1000, NativeError = 0
Error = [Microsoft][SQL Server Native Client 11.0]Unexpected EOF encountered in BCP data-file
NULL
0 rows copied.
Network packet size (bytes): 4096
Clock Time (ms.) Total : 594
NULL[/quot]
21 сен 15, 13:11    [18174887]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Glory
Member

Откуда:
Сообщений: 104751
Masyny23
Unexpected EOF encountered in BCP data-file

Формат вашего файла опять не соответствует заявленому в тексте команды
Вы что не в состоянии выяснить, какие разделители у вас строк и столбцов и присиутствуют ли они во всех предназначенных для этого местах ?
21 сен 15, 13:14    [18174907]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
aleks2
Guest
У нее там разделитель строк

0x0A

чего BCP при -r\n не понимайт.

Надо

0x0D0A
21 сен 15, 14:42    [18175586]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Glory
Member

Откуда:
Сообщений: 104751
aleks2
У нее там разделитель строк

0x0A

чего BCP при -r\n не понимайт.

Надо

0x0D0A

BOL
-r row_term
Specifies the row terminator. The default is \n (newline character). Use this parameter to override the default row terminator.
21 сен 15, 14:50    [18175664]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Masyny23
Member

Откуда:
Сообщений: 47
aleks2, спасибо, при выборе "0x0A", все загружается.
21 сен 15, 14:51    [18175676]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Glory
Member

Откуда:
Сообщений: 104751
Masyny23
aleks2, спасибо, при выборе "0x0A", все загружается.

0x0A и есть \n. Что является разделителем по-умолчанию. Т.е. его можно не указывать вообще

bcp "DWH.dbo.T1" in c:\temp\20150806_line_7.csv -S Myserver -T -t; -c
21 сен 15, 14:57    [18175742]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Masyny23
Member

Откуда:
Сообщений: 47
Ну и еще вопрос, можно ли загружать файлы если они в архиве, или прежде их надо разархивировать?

при чем
exec master..xp_cmdshell 'dir Z:\report\line_5\20150806_line_5.csv.gz'
файл видит.
21 сен 15, 15:02    [18175793]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Glory
Member

Откуда:
Сообщений: 104751
Masyny23
Ну и еще вопрос, можно ли загружать файлы если они в архиве, или прежде их надо разархивировать?

А вы думаете, что bcp еще и архивацией занимается ?
21 сен 15, 15:03    [18175811]     Ответить | Цитировать Сообщить модератору
 Re: OpenRowset Ms Sql 2012  [new]
Masyny23
Member

Откуда:
Сообщений: 47
Glory, если не указывать -r0x0A вылетает ошибка:

NULL
Starting copy...
SQLState = S1000, NativeError = 0
Error = [Microsoft][SQL Server Native Client 11.0]Unexpected EOF encountered in BCP data-file
NULL
0 rows copied.
Network packet size (bytes): 4096
Clock Time (ms.) Total : 750
NULL
21 сен 15, 15:07    [18175847]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить