2010-01-06 6 views
60

Есть ли способ подавить «строки x затронуты» в SQLCMD из командной строки?Есть ли способ подавить «x rows affected» в SQLCMD из командной строки?

Я запускаю сценарий MSBuild и не хочу, чтобы он забивал мой журнал на моем сервере сборки.

Мне не нужно добавлять «SET NOCOUNT ON» в каждый скрипт, поэтому, если есть способ сделать это из командной строки, это будет фантастично.

ответ

71

Как создать сценарий запуска с помощью SET NOCOUNT ON в сценарии (присвойте скрипту переменной среды SQLCMDINI). http://msdn.microsoft.com/en-us/library/ms162773.aspx

+0

Я думаю, что вариант SQLCMDINI должен работать. –

+0

Cade is right -i и -q взаимовыгодны - я обновлю. – fupsduck

38

-i и -q варианты are mutually exclusive.

Создайте файл с именем setnocount.sql с содержанием:

SET NOCOUNT ON; 

И вы могли бы быть в состоянии сделать -i setnocount.sql,otherscript.sql с помощью нескольких файлов имеют и фактически является «включены» общим первым файл.

+0

ссылка сломана :-(какая-нибудь идея, что это было? – roufamatic

+0

@roufamatic Link работает forme, страница - это MSDN под названием 'sqlcmd Utility' с помощью пути к меню: Database Engine -> Технический справочник -> Справочная утилита командной строки (Database Engine) – dckuehn

27

Вы также можете запустить несколько строк в параметре -Q, разделенных точкой с запятой, как показано ниже

например:

-Q "set nocount on;select * from table;delete from table where some_condition=true" 
+0

Есть ли способ игнорировать имя столбца на выходе? – singhswat