Gibt es eine Möglichkeit, "betroffene x Zeilen" in SQLCMD über die Befehlszeile zu unterdrücken?

80

Gibt es eine Möglichkeit, "x betroffene Zeilen" in SQLCMD über die Befehlszeile zu unterdrücken?

Ich führe ein MSBuild-Skript aus und möchte nicht, dass es mein Protokoll auf meinem Build-Server verstopft.

Ich möchte lieber nicht in jedem Skript "SET NOCOUNT ON" hinzufügen. Wenn es also eine Möglichkeit gibt, dies über die Befehlszeile zu tun, wäre das fantastisch.

Josh Kodroff
quelle

Antworten:

89

Was ist mit dem Erstellen eines Startskripts mit SET NOCOUNT ON im Skript (weisen Sie das Skript der Umgebungsvariablen SQLCMDINI zu). http://msdn.microsoft.com/en-us/library/ms162773.aspx

fupsduck
quelle
2
Ja - einfach SET NOCOUNT ON hinzufügen; zu Ihrer Exportabfrage (oder Abfragedatei) wird dies helfen.
DtechNet
49

Die Optionen -iund schließen sich gegenseitig aus .-q

Erstellen Sie eine Datei mit dem Namen setnocount.sql mit dem Inhalt:

SET NOCOUNT ON;

Möglicherweise können Sie -i setnocount.sql,otherscript.sqldie Funktion für mehrere Dateien und effektiv eine "enthaltene" gemeinsame erste Datei verwenden.

Cade Roux
quelle
Link kaputt :-( Irgendeine Idee was es war?
Roufamatic
@roufamatic Link funktioniert Form, die Seite ist eine MSDN sqlcmd Utilitymit dem Menüpfad : Datenbank-Engine -> Technische Referenz -> Befehlsaufforderung Utility-Referenz (Datenbank-Engine)
dckuehn
38

Sie können im -QParameter auch mehrere Zeilen ausführen , die wie unten durch ein Semikolon getrennt sind

z.B:

-Q "set nocount on;select * from table;delete from table where some_condition=true"
rauben
quelle
Gibt es eine Möglichkeit, den Spaltennamen in der Ausgabe zu ignorieren?
singhswat
4
Sie übergeben, -h -1was bedeutet, dass Sie nicht möchten, dass Überschriften gedruckt werden.
Steve K