|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
Доброе время суток! Друзья, помогите, пож-та, небольшой вопрос по sqlcmd: Есть хранимая процедура, которую запускаю через sqlcmd и сохраняю результат в файл с помощью командной строки : С:\>sqlcmd -E -S Server\SQLExpress -d DB_test -Q ''exec dbo.proc 1,1,1,2" -o C:\myoutput.csv -в файл myoutput.csv пишутся только сообщения, без результирующего грида Когда я эту же процедуру запускаю в редакторе запросов SQL Server в режиме SQLCMD: :OUT C:\myoutput.csv exec dbo.proc 1,1,1,2 GO то в myoutput.csv пишется все - и грид и сообщения... Что я упустила при работе с командной строкой sqlcmd, чтобы запись в файл происходила как во 2м случае? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 19:39 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
Yennifer123, попробуйте так : Код: powershell 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 20:03 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
komrad, Код: powershell 1.
попробовала, но картина все та же(( ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 12:00 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
Yennifer123, а так что получается? Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 12:07 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
komrad, Код: sql 1.
все равно одни сообщения в выходном файле ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 12:18 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
Yennifer123 все равно одни сообщения в выходном файле какие ? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 12:18 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
komrad, это PRINT'ы вшитых хранимых процедур, которые сообщают таким образом о своем успешном выполнении ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 12:33 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
Yennifer123, Код: sql 1.
попробуйте ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 12:50 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
env, можно поподробнее? не совсем понятно... ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 12:56 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
Кстати. А банально первым шагом вызова сделать SET NOCOUNT ON уже предлагали? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 13:00 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
Yennifer123, Это перенаправление вывода stderr в stdout для вызова консольной утилиты. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 13:01 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
env, env Кстати. А банально первым шагом вызова сделать SET NOCOUNT ON уже предлагали? - даа, делала и это, тоже не спасло(( ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 13:05 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
env, поняла, это наверное так вызывается sqlcmd -E -i "somesqlfile1.sql" -b >>deploy.log 2>&1 IF ERRORLEVEL 1 GOTO errorline ---применила, но все равно вывод одних сообщений! ощущение, что он обрезает грид ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 13:09 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
Yennifer123, Попробуйте добавить в вызов опцию -I (устанавливает quoted_identifier в on) или допишите в начало скрипта Код: sql 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 13:22 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 13:24 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
Yennifer123 komrad, это PRINT'ы вшитых хранимых процедур, которые сообщают таким образом о своем успешном выполнении вот этот конкретный пример что возвращает? Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 13:31 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
Konst_One Код: sql 1.
это испробовано в самом начале - см начало ветки ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 13:31 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
invm, попробовала, пока что без изменений. Файл с сообщениями ... и все. Очень странно, что через SSMS пишет идеально весь результат в файл. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 13:34 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
komrad Yennifer123 komrad, это PRINT'ы вшитых хранимых процедур, которые сообщают таким образом о своем успешном выполнении вот этот конкретный пример что возвращает? Код: sql 1.
возвращает вот что в файле result.txt spid ecid status loginame --------------------------------------------------- 59 0 runnable E\eva (1 rows affected) то есть грид записался в файл.... ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 13:42 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
Yennifer123 komrad пропущено... вот этот конкретный пример что возвращает? Код: sql 1.
возвращает вот что в файле result.txt spid ecid status loginame --------------------------------------------------- 59 0 runnable E\eva (1 rows affected) значит sqlcmd ведет себя корректно и "чудеса" только с вашими процедурами например, "защита" от выполнения из sqlcmd, или "разрешены" только SSMS и приложение ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 13:43 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
Yennifer123 Очень странно, что через SSMS пишет идеально весь результат в файл. Возьмите профайлер и сравните опции соединения и что выполняется из студии и из sqlcmd ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 13:45 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
komrad, залезла в хп (она аутсорсинговая) и вот что нашла: if program_name() like '%Microsoft SQL Server Management Studio%' begin select * from table end -- это как раз тот грид, что мне нужен действительно так! спасибо за умные мысли! ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 13:49 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
invm, к сожалению по ряду причин админы не могу мне дать права на трассировку, что делает мою работу немного рутиннее... Спасибо большое всем за содействие. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 13:54 |
|
Вывод результата хранимой процедуры в файл SQLCMD
|
|||
---|---|---|---|
#18+
Друзья, я рано обрадовалась. Нашли причину в одной проблеме, но всплыла другая Вариант 1 sqlcmd -E -S Server\SQLEXPRESS -d DB_test -Q "declare @d datetime;select @d = CONVERT(datetime, '21/10/2020 09:00:00', 104);exec [zapi].[Export_Oper] @Date = @d, @TMode = 3" -o c:\Work\1\result.txt выводит в файл не весь результат, а только его часть! результат выполнения данного запроса - одна колонка с очень длинной строкой: преобразованное blob - поле с размером(47932) в varchar(max). И эта строка тупо обрывается на определенном символе. Вариант 2 :out c:\Work\1\result.txt declare @d datetime; select @d = CONVERT(datetime, '21/10/2020 09:00:00', 104); exec [zapi].[Export_Oper] @Date = @d, @TMode = 3 GO экспортирует весь результат полностью. Кто то из гуру сможет мне указать на ошибку в первом варианте? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 20:02 |
|
|
start [/forum/topic.php?fid=46&fpage=39&tid=1685282]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
37ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
others: | 284ms |
total: | 419ms |
0 / 0 |