SQL Server PowerShell-AnbieterSQL Server PowerShell Provider

GILT FÜR: JaSQL Server JaAzure SQL-Datenbank JaAzure Synapse Analytics (SQL Data Warehouse) JaParallel Data Warehouse APPLIES TO: YesSQL Server YesAzure SQL Database YesAzure Synapse Analytics (SQL Data Warehouse) YesParallel Data Warehouse

Der SQL ServerSQL Server -Anbieter für Windows PowerShell macht die Hierarchie von SQL ServerSQL Server -Objekten auf ähnliche Weise wie in Dateisystempfaden verfügbar.The SQL ServerSQL Server provider for Windows PowerShell exposes the hierarchy of SQL ServerSQL Server objects in paths similar to file system paths. Mithilfe der Pfade können Sie Objekte finden und dann Methoden der SQL ServerSQL Server Management Object-Modelle (SMO) verwenden, um Aktionen für die Objekte auszuführen.You can use the paths to locate an object, and then use methods from the SQL ServerSQL Server Management Object (SMO) models to perform actions on the objects.

Hinweis

Es gibt zwei SQL Server PowerShell-Module: SqlServer und SQLPS.There are two SQL Server PowerShell modules; SqlServer and SQLPS. Das SQLPS-Modul ist zwar in der SQL Server-Installation (für die Abwärtskompatibilität) enthalten, wird jedoch nicht mehr aktualisiert.The SQLPS module is included with the SQL Server installation (for backwards compatibility), but is no longer being updated. Das SqlServer-Modul ist das aktuellste PowerShell-Modul.The most up-to-date PowerShell module is the SqlServer module. Das SqlServer-Modul enthält aktualisierte Versionen der Cmdlets in SQLPS sowie neue Cmdlets zur Unterstützung der neuesten SQL-Funktionen.The SqlServer module contains updated versions of the cmdlets in SQLPS, and also includes new cmdlets to support the latest SQL features.
Vorherige Versionen des SqlServer-Moduls waren in SQL Server Management Studio (SSMS) enthalten, allerdings nur in den Versionen 16.x.Previous versions of the SqlServer module were included with SQL Server Management Studio (SSMS), but only with the 16.x versions of SSMS. Das SqlServer-Modul muss über den PowerShell-Katalog installiert werden, damit PowerShell mit SSMS 17.0 und höher verwendet werden kann.To use PowerShell with SSMS 17.0 and later, the SqlServer module must be installed from the PowerShell Gallery. Informationen zur Installation des SqlServer-Moduls finden Sie unter Installieren von SQL Server PowerShell.To install the SqlServer module, see Install SQL Server PowerShell.

Vorteile des SQL Server PowerShell-AnbietersBenefits of the SQL Server PowerShell Provider

Die vom SQL ServerSQL Server -Anbieter implementierten Pfade ermögliche das einfache und interaktive Überprüfen aller Objekte in einer Instanz von SQL Server.The paths implemented by the SQL ServerSQL Server provider enable easily and interactively reviewing all of the objects in an instance of SQL Server. Sie können in den Pfaden navigieren, indem Sie Windows PowerShell-Aliase ähnlich den Befehlen verwenden, die Sie normalerweise zum Navigieren in den Dateisystempfaden verwenden.You can navigate the paths using Windows PowerShell aliases similar to the commands you typically use to navigate file system paths.

Die SQL Server PowerShell-HierarchieThe SQL Server PowerShell Hierarchy

Produkte, deren Daten oder Objektmodelle in einer Hierarchie dargestellt werden können, verwenden Windows PowerShell-Anbieter, um die Hierarchien verfügbar zu machen.Products whose data or object models can be represented in a hierarchy use Windows PowerShell providers to expose the hierarchies. Die Hierarchie wird mithilfe einer Laufwerks- und Pfadstruktur verfügbar gemacht, die der für das Windows-Dateisystem verwendeten Struktur ähnelt.The hierarchy is exposed by using a drive and path structure similar to what the Windows file system uses.

Jeder Windows PowerShell-Anbieter implementiert ein oder mehrere Laufwerke.Each Windows PowerShell provider implements one or more drives. Jedes Laufwerk ist der Stammknoten einer Hierarchie verwandter Objekte.Each drive is the root node of a hierarchy of related objects. Der SQL ServerSQL Server -Anbieter implementiert ein Laufwerk mit der Bezeichnung SQLSERVER:The SQL ServerSQL Server provider implements a SQLSERVER: drive. Der Anbieter definiert auch einen Satz von primären Ordnern für das SQLSERVER:-Laufwerk.The provider also defines a set of primary folders for the SQLSERVER: drive. Jeder Ordner und seine Unterordner stellen den Satz von Objekten dar, auf die über ein SQL ServerSQL Server Management Object-Modell zugegriffen werden kann.Each folder and its subfolders represent the set of objects that can be accessed by using a SQL ServerSQL Server management object model. Wenn sich der Fokus auf einem Unterordner in einem Pfad befindet, der mit einem dieser primären Ordner beginnt, können Sie die Methoden des zugeordneten Objektmodells verwenden, um Aktionen für das vom Knoten dargestellte Objekt auszuführen.When you are focused on a subfolder in a path that starts with one of these primary folders, you can use the methods from the associated object model to perform actions on the object that is represented by the node. Die vom SQL Server 2019 (15.x)SQL Server 2019 (15.x)-Anbieter implementierten Windows PowerShell-Ordner werden in der folgenden Tabelle aufgeführt:The Windows PowerShell folders implemented by the SQL Server 2019 (15.x)SQL Server 2019 (15.x) provider are listed in the following table:

OrdnerFolder Namespace des SQL Server-ObjektmodellsSQL Server object model namespace ObjekteObjects
SQLSERVER:\SQL Microsoft.SqlServer.Management.Smo

Microsoft.SqlServer.Management.Smo.Agent

Microsoft.SqlServer.Management.Smo.Broker

Microsoft.SqlServer.Management.Smo.Mail
Datenbankobjekte, wie Tabellen, Sichten und gespeicherte Prozeduren.Database objects, such as tables, views, and stored procedures.
SQLSERVER:\SQLPolicy Microsoft.SqlServer.Management.Dmf

Microsoft.SqlServer.Management.Facets
Richtlinienbasierte Verwaltungsobjekte, z. B. Richtlinien und FacetsPolicy-based management objects, such as policies and facets.
SQLSERVER:\SQLRegistration Microsoft.SqlServer.Management.RegisteredServers

Microsoft.SqlServer.Management.Smo.RegSvrEnum
Registrierte Serverobjekte, z. B. Servergruppen und registrierte ServerRegistered server objects, such as server groups and registered servers.
SQLSERVER:\Utility Microsoft.SqlServer.Management.Utility Hilfsprogrammobjekte, z. B. verwaltete Datenbank-EngineDatabase Engine-InstanzenUtility objects, such as managed instances of the Datenbank-EngineDatabase Engine.
SQLSERVER:\DAC Microsoft.SqlServer.Management.DAC Datenebenenanwendungs-Objekte z. B. DAC-Pakete und Vorgänge wie das Bereitstellen einer DACData-tier application objects such as DAC packages, and operations such as deploying a DAC.
SQLSERVER:\DataCollection Microsoft.SqlServer.Management.Collector Datensammler-Objekte, z. B. Sammlungssätze und KonfigurationsspeicherData collector objects, such as collection sets and configuration stores.
SQLSERVER:\SSIS Microsoft.SqlServer.Management.IntegrationServices Integration ServicesIntegration Services -Objekte, z. B. Projekte, Pakete und Umgebungenobjects such as projects, packages, and environments.
SQLSERVER:\XEvent Microsoft.SqlServer.Management.XEvent Erweiterte Ereignisse von SQL ServerSQL Server Extended Events
SQLSERVER:\DatabaseXEvent Microsoft.SqlServer.Management.XEventDbScopedMicrosoft.SqlServer.Management.XEventDbScoped Erweiterte Ereignisse von SQL ServerSQL Server Extended Events
SQLSERVER:\SQLAS Microsoft.AnalysisServices Analysis ServicesAnalysis Services -Objekte, z. B. Cubes, Aggregationen und Dimensionenobjects such as cubes, aggregations, and dimensions.

Sie können z. B. mit dem Ordner "SQLSERVER:\SQL" Pfade beginnen, die jedes vom SMO-Objektmodell unterstützte Objekt darstellen können.For example, you can use the SQLSERVER:\SQL folder to start paths that can represent any object that is supported by the SMO object model. Der erste Teil eines SQLSERVER:\SQL-Pfads ist SQLSERVER:\SQL\Computername\Instanzname.The leading part of a SQLSERVER:\SQL path is SQLSERVER:\SQL\ComputerName\InstanceName. Die Knoten nach dem Instanznamen sind Objektsammlungen (wie Datenbanken oder Sichten) und Objektnamen (wie AdventureWorks2012).The nodes after the instance name alternate between object collections (such as Databases or Views) and object names (such as AdventureWorks2012). Schemas werden nicht als Objektklassen dargestellt.Schemas are not represented as object classes. Wenn Sie den Knoten für ein Objekt der höchsten Ebene in einem Schema angeben, wie beispielsweise eine Tabelle oder eine Sicht, müssen Sie den Objektnamen im Format Schemaname.Objektnameangeben.When you specify the node for a top-level object in a schema, such as a table or view, you must specify the object name in the format SchemaName.ObjectName.

Im folgenden Beispiel wird der Pfad der Vendor-Tabelle im Purchasing-Schema der AdventureWorks2012-Datenbank in einer Standardinstanz von Datenbank-EngineDatabase Engine auf dem lokalen Computer angezeigt:The following example shows the path of the Vendor table in the Purchasing schema of the AdventureWorks2012 database in a default instance of the Datenbank-EngineDatabase Engine on the local computer:

SQLSERVER:\SQL\localhost\DEFAULT\Databases\AdventureWorks2012\Tables\Purchasing.Vendor  

Weitere Informationen zur SMO-Objektmodellhierarchie finden Sie unter SMO Object Model Diagram.For more information about the SMO object model hierarchy, see SMO Object Model Diagram.

Auflistungsknoten in einem Pfad werden im zugeordneten Objektmodell einer Auflistung zugeordnet.Collection nodes in a path are associated with a collection class in the associated object model. Objektnamenknoten werden wie in der folgenden Tabelle dargestellt einer Objektklasse im zugeordneten Objektmodell zugeordnet:Object name nodes are associated with an object class in the associated object model, as in the following table:

PathPath SMO-KlasseSMO class
SQLSERVER:\SQL\MyComputer\DEFAULT\Databases DatabaseCollection
SQLSERVER:\SQL\MyComputer\DEFAULT\Databases\AdventureWorks2012 Database

SQL Server-AnbietertasksSQL Server Provider Tasks

TaskbeschreibungTask Description ArtikelArticle
Beschreibt, wie Windows PowerShell-Cmdlets verwendet werden, um durch die Knoten in einem Pfad zu navigieren und an jedem Knoten eine Liste der Objekte in diesem Knoten abzurufen.Describes how to use Windows PowerShell cmdlets to navigate through the nodes in a path, and at each node get a list of the objects at that node. Navigieren in SQL Server PowerShell-PfadenNavigate SQL Server PowerShell Paths
Beschreibt, wie die SMO-Methoden und SMO-Eigenschaften verwendet werden, um Berichte über ein Objekt, das von einem Knoten in einem Pfad dargestellt wird, zu erstellen und es zu verarbeiten.Describes how to use the SMO methods and properties to report on and perform work on the object represented by a node in a path. Beschreibt darüber hinaus, wie eine Liste der SMO-Methoden und SMO-Eigenschaften für diesen Knoten abgerufen wird.Also describes how to get a list of the SMO methods and properties for that node. Verwenden von SQL Server PowerShell-PfadenWork With SQL Server PowerShell Paths
Beschreibt, wie ein SMO Uniform Resource Name (URN) in einen SQL Server-Anbieterpfad konvertiert wird.Describes how to convert a SMO Uniform Resource Name (URN) to a SQL Server provider path. Konvertieren von URNs in SQL Server-AnbieterpfadeConvert URNs to SQL Server Provider Paths
Beschreibt, wie SQL Server-Authentifizierungsverbindungen mit dem SQL ServerSQL Server -Anbieter geöffnet werden.Describes how to open SQL Server Authentication connections by using the SQL ServerSQL Server provider. Standardmäßig verwendet der Anbieter Windows-Authentifizierungsverbindungen, die mit den Anmeldeinformationen des Windows-Kontos hergestellt wurden, das die Windows PowerShell-Sitzung ausführt.By default, the provider uses Windows Authentication connections made using the credentials of the Windows account running the Windows PowerShell session. Verwalten der Authentifizierung in PowerShell der Datenbank-EngineManage Authentication in Database Engine PowerShell

Nächste SchritteNext steps

SQL Server-PowerShellSQL Server PowerShell