Verwenden von SQL Server PowerShell-PfadenWork With SQL Server PowerShell Paths

Nach der Navigation zu einem Knoten in einem DatenbankmodulDatabase Engine -Anbieterpfad können Sie mit den Methoden und Eigenschaften des DatenbankmodulDatabase Engine -Verwaltungsobjekts, das dem Knoten zugeordnet ist, Arbeiten ausführen oder Informationen abrufen.After you have navigated to a node in a DatenbankmodulDatabase Engine provider path, you can perform work or retrieve information by using the methods and properties from the DatenbankmodulDatabase Engine management object associated with the node.

  1. VorbereitungenBefore You Begin

  2. To work on a path node: Listing Methods and Properties, Using Methods and PropertiesTo work on a path node: Listing Methods and Properties, Using Methods and Properties

Vorbereitungen Before You Begin

Nach der Navigation zu einem Knoten in einem DatenbankmodulDatabase Engine -Anbieterpfad können Sie zwei Arten von Aktionen ausführen:After you have navigated to a node in a DatenbankmodulDatabase Engine provider path, you can perform two types of actions:

  • Sie können Windows PowerShell-Cmdlets ausführen, die Vorgänge an Knoten durchführen, z.B. Rename-Item.You can run Windows PowerShell cmdlets that operate on nodes, such as Rename-Item.

  • Sie können die Methoden vom zugeordneten SQL ServerSQL Server -Modell des Verwaltungsobjekts aufrufen, z. B. SMO.You can call the methods from the associated SQL ServerSQL Server management object model, such as SMO. Wenn Sie beispielsweise zum Datenbankenknoten in einem Pfad navigieren, können Sie die Methoden und Eigenschaften der Database-Klasse verwenden.For example, if you navigate to the Databases node in a path, you can use the methods and properties of the Database class.

    Der SQL ServerSQL Server -Anbieter wird zum Verwalten der Objekte in einer Instanz von DatenbankmodulDatabase Engineverwendet.The SQL ServerSQL Server provider is used to manage the objects in an instance of the DatenbankmodulDatabase Engine. Er wird nicht verwendet, um mit den Daten in Datenbanken zu arbeiten.It is not used to work with the data in databases. Wenn Sie zu einer Tabelle oder einer Sicht navigiert sind, können Sie den Anbieter nicht dazu verwenden, Daten auszuwählen, einzufügen, zu aktualisieren oder zu löschen.If you have navigated to a table or view, you cannot use the provider to select, insert, update, or delete data. Verwenden Sie das Cmdlet Invoke-Sqlcmd , um Daten in Tabellen und Sichten aus der Windows PowerShell-Umgebung abzufragen oder zu ändern.Use the Invoke-Sqlcmd cmdlet to query or change data in tables and views from the Windows PowerShell environment. Weitere Informationen finden Sie unter Cmdlet Invoke-Sqlcmd.For more information, see Invoke-Sqlcmd cmdlet.

Auflisten von Methoden und Eigenschaften Listing Methods and Properties

Auflisten von Methoden und EigenschaftenListing Methods and Properties

Sie können das Cmdlet Get-Member verwenden, um die für bestimmte Objekte oder Objektklassen verfügbaren Methoden und Eigenschaften anzuzeigen.To view the methods and properties available for specific objects or object classes, use the Get-Member cmdlet.

Beispiele: Auflisten von Methoden und EigenschaftenExamples: Listing Methods and Properties

In diesem Beispiel wird eine Windows PowerShell-Variable auf die SMO-Database-Klasse festgelegt und listet die Methoden und Eigenschaften auf:This example sets a Windows PowerShell variable to the SMO Database class and lists the methods and properties:

$MyDBVar = New-Object Microsoft.SqlServer.Management.SMO.Database  
$MyDBVar | Get-Member –Type Methods  
$MyDBVar | Get-Member -Type Properties  

Sie können Get-Member ebenfalls verwenden, um die dem Endknoten eines Windows PowerShell-Pfads zugeordneten Methoden und Eigenschaften aufzulisten.You can also use Get-Member to list the methods and properties that are associated with the end node of a Windows PowerShell path.

In diesem Beispiel wird zum Knoten Databases in einem SQLSERVER:-Pfad navigiert, und die Auflistungseigenschaften werden aufgeführt:This example navigates to the Databases node in a SQLSERVER: path and lists the collection properties:

Set-Location SQLSERVER:\SQL\localhost\DEFAULT\Databases  
Get-Item . | Get-Member -Type Properties  

In diesem Beispiel wird zum Knoten AdventureWorks2012 in einem SQLSERVER:-Pfad navigiert, und die Objekteigenschaften werden aufgeführt:This example navigates to the AdventureWorks2012 node in a SQLSERVER: path and lists the object properties:

Set-Location SQLSERVER:\SQL\localhost\DEFAULT\Databases\AdventureWorks2012  
Get-Item . | Get-Member -Type Properties  

Verwenden von Methoden und Eigenschaften Using Methods and Properties

Verwenden von SMO-Methoden und EigenschaftenUsing SMO Methods and Properties

Sie können SMO-Methoden und Eigenschaften dazu verwenden, Arbeiten an Objekten eines DatenbankmodulDatabase Engine -Anbieterpfads auszuführen.To perform work on objects from a DatenbankmodulDatabase Engine provider path, you can use SMO methods and properties.

Beispiele: Verwenden von Methoden und EigenschaftenExamples: Using Methods and Properties

In diesem Beispiel wird die Schema -Eigenschaft von SMO verwendet, um eine Liste der Tabellen aus dem Sales-Schema in AdventureWorks2012 abzurufen:This example uses the SMO Schema property to get a list of the tables from the Sales schema in AdventureWorks2012:

Set-Location SQLSERVER:\SQL\localhost\DEFAULT\Databases\AdventureWorks2012\Tables  
Get-ChildItem | where {$_.Schema -eq "Sales"}  

In diesem Beispiel wird die SMO-Methode Script verwendet, um ein Skript zu erstellen, das die CREATE VIEW -Anweisungen enthält, die Sie zur erneuten Erstellung der Sichten in AdventureWorks2012 benötigen:This example uses the SMO Script method to generate a script that contains the CREATE VIEW statements you must have to re-create the views in AdventureWorks2012:

Remove-Item C:\PowerShell\CreateViews.sql  
Set-Location SQLSERVER:\SQL\localhost\DEFAULT\Databases\AdventureWorks2012\Views  
foreach ($Item in Get-ChildItem) { $Item.Script() | Out-File -Filepath C:\PowerShell\CreateViews.sql -append }  

In diesem Beispiel wird mit der Methode SMO Create eine Datenbank erstellt und dann mit der Eigenschaft State angezeigt, ob die Datenbank vorhanden ist:This example uses the SMO Create method to create a database, and then uses the State property to show whether the database exists:

Set-Location SQLSERVER:\SQL\localhost\DEFAULT\Databases  
$MyDBVar = New-Object Microsoft.SqlServer.Management.SMO.Database  
$MyDBVar.Parent = (Get-Item ..)  
$MyDBVar.Name = "NewDB"  
$MyDBVar.Create()  
$MyDBVar.State  

Siehe auchSee Also

SQL Server PowerShell-Anbieter SQL Server PowerShell Provider
Navigieren in SQL Server PowerShell-Pfaden Navigate SQL Server PowerShell Paths
Konvertieren von URNs in SQL Server-Anbieterpfade Convert URNs to SQL Server Provider Paths
SQL Server-PowerShell SQL Server PowerShell