Результаты SQL Server в файл Создает дополнительные строки в конце

1775
B540Glenn

Когда я перенаправляю вывод своих запросов в файл, внизу появляются одна или две пустые строки. Когда я запускаю запрос через SSMS (2008 или 2012), я получаю две дополнительные пустые строки. Когда я запускаю запрос через SQLCMD, я получаю 1 лишнюю пустую строку. Как мне от них избавиться?

Пример (с использованием SSMS):

Set NoCount on Select '1' as 'One' 

Результат этого запроса в файле:

One 1 (blank line) (blank line) 

или шестнадцатеричный 4F 6E 65 0D 0A 31 0D 0A 0D 0A

Дополнительные строки внизу вызывают проблемы с шагами, которые используют выходные данные в качестве входных данных.

Есть ли параметр, который я могу установить в начале запроса?

Это вариант базы данных?

2
Я не уверен, что есть способ отключить дополнительные пустые строки в конце SSMS (я обнаружил, что параметры / контроль "результаты в файл" очень ограничены в моем опыте). Возможно, используйте пакет, который использует `SQLCMD` для выгрузки в файл, а затем используйте вариант` findstr "." input.txt> output.txt`, чтобы убрать из него все пустые строки перед переходом к следующему шагу? Возможно, вам также придется пойти дальше и найти способ удалить перевод строки из последней строки текста. Ƭᴇcʜιᴇ007 8 лет назад 0
Я хотел бы избежать каких-либо дополнительных манипуляций с файлами, потому что некоторые из них имеют размер более 1 ГБ и растут. Но если мне нужно, лучше найти findstr, чем редактировать его вручную. Спасибо B540Glenn 8 лет назад 0

1 ответ на вопрос

0
Bharat Prasad Satyal

Before writing into the file add one conditional split step. Double click the component and in the output name, give the name 'No Empty Row' and in the condition write LEN(TRIM(One)) > 0. Here One is column name this condition will remove those rows having nulls. Now link the output of conditional output to data file destination. Remember to choose No Empty Row. From this you can remove extra rows.

Я думаю, что это сработало бы, если бы я работал через SSIS. К сожалению, SSIS не подходит для этого процесса. B540Glenn 6 лет назад 0