Freigeben über


sqlps (Dienstprogramm)

Das Dienstprogramm sqlps startet eine PowerShell-Sitzung mit geladenem und registriertem SQL Server-PowerShell-Anbieter sowie geladenen und registrierten Cmdlets. Sie können PowerShell-Befehle oder -Skripts eingeben, die die SQL Server-PowerShell-Komponenten verwenden, sodass Instanzen von SQL Server und ihre Objekte verwendet werden können.

Syntax

sqlps 
[ [ [ -NoLogo ][ -NoExit ][ -NoProfile ]
      [ -OutPutFormat { Text | XML } ] [ -InPutFormat { Text | XML } ]
  ]
    [ -Command { -
               | script_block [ -args argument_array ]
               | string [ command_parameters ]
                 }
  ]
]
[ -? | -Help ]

Argumente

  • -NoLogo
    Gibt an, dass beim Start von sqlps die Copyrightinformationen ausgeblendet werden.

  • -NoExit
    Gibt an, dass sqlps weiter ausgeführt wird, nachdem die Startbefehle abgeschlossen sind.

  • -NoProfile
    Gibt an, dass sqlps kein Benutzerprofil lädt. In Benutzerprofilen werden häufig verwendete Aliase, Funktionen und Variablen zur Verwendung in mehreren PowerShell-Sitzungen aufgezeichnet.

  • -OutPutFormat { Text | XML }
    Gibt an, dass die Ausgabe von sqlps entweder als Textzeichenfolgen (Text) oder in einem serialisierten CLIXML-Format (XML) formatiert werden soll.

  • -InPutFormat { Text | XML }
    Gibt an, dass die Eingabe in sqlps entweder als Textzeichenfolgen (Text) oder in einem serialisierten CLIXML-Format (XML) formatiert ist.

  • -Command
    Gibt den Befehl an, der von sqlps ausgeführt werden soll. Das Dienstprogramm sqlps führt den Befehl aus und wird dann beendet, es sei denn, -NoExit ist ebenfalls angegeben. Geben Sie nach -Command keine anderen Schalter an, denn diese werden als Befehlsparameter gelesen.

  • -
    -Command- gibt an, dass sqlps die Eingabe aus der Standardeingabe lesen soll.

  • script_block [ -argsargument_array ]
    Gibt einen Block auszuführender PowerShell-Befehle an. Der Block muss in geschweifte Klammern eingeschlossen sein: {}. Script_block kann nur angegeben werden, wenn sqlps entweder mit PowerShell oder mit sqlps aufgerufen wird. argument_array ist ein Array von PowerShell-Variablen, das die Argumente für die PowerShell-Befehle in script_block beinhaltet.

  • string [ command_parameters ]
    Gibt eine Zeichenfolge an, die die auszuführenden PowerShell-Befehle beinhaltet. Verwenden Sie das Format "&{command}". Die Anführungszeichen geben eine Zeichenfolge an, und der Aufrufoperator (&) bewirkt, dass sqlps den Befehl ausführt.

  • [ -? | -Help ]
    Zeigt eine Syntaxzusammenfassung der sqlps-Optionen an.

Hinweise

Das Dienstprogramm sqlps startet die PowerShell-Umgebung (PowerShell.exe) mit geladenen und registrierten SQL Server-PowerShell-Snap-Ins. Die SQL Server-PowerShell-Snap-Ins lauten wie folgt:

  • Microsoft.SqlServer.Management.PSProvider.dll

    Implementiert den SQL Server-PowerShell-Anbieter und zugeordnete Cmdlets, z. B. Encode-SqlName und Decode-SqlName.

  • Microsoft.SqlServer.Management.PSSnapin.dll

    Implementiert das Invoke-Sqlcmd-Cmdlet.

sqlps kann für die folgenden Aufgaben verwendet werden:

  • Interaktives Ausführen von PowerShell-Befehlen.

  • Ausführen von PowerShell-Skriptdateien.

  • Ausführen von SQL Server-Cmdlets.

  • Verwenden Sie die SQL Server-Anbieterpfade, um durch die Hierarchie der SQL Server-Objekte zu navigieren.

Standardmäßig wird sqlps mit auf Restricted festgelegter Skriptausführungsrichtlinie ausgeführt. Dadurch wird die Ausführung von PowerShell-Skripts verhindert. Sie können das Set-ExecutionPolicy-Cmdlet verwenden, um die Ausführung signierter Skripts oder beliebiger Skripts zu ermöglichen. Führen Sie nur Skripts aus vertrauenswürdigen Quellen aus, und sichern Sie alle Eingabe- und Ausgabedateien, indem Sie die geeigneten NTFS-Berechtigungen verwenden. Weitere Informationen zum Aktivieren von PowerShell-Skripts finden Sie unter Running Windows PowerShell Scripts.

Beispiele

A. Ausführen von "sqlps" im interaktiven Standardmodus ohne Copyrightbanner

sqlps -NoLogo

B. Ausführen eines SQL Server-PowerShell-Skripts von der Eingabeaufforderung

sqlps -Command "&{.\MyFolder.MyScript.ps1}"

C. Ausführen eines SQL Server-PowerShell-Skripts von der Eingabeaufforderung und weitere Ausführung nach Abschluss des Skripts

sqlps -NoExit -Command "&{.\MyFolder.MyScript.ps1}"