Utilizzo di percorsi di SQL Server PowerShellWork With SQL Server PowerShell Paths

Dopo essere passati a un nodo in un percorso di provider Motore di databaseDatabase Engine , è possibile eseguire operazioni o recuperare informazioni utilizzando i metodi e le proprietà dell'oggetto di gestione di Motore di databaseDatabase Engine associato al nodo in questione.After you have navigated to a node in a Motore di databaseDatabase Engine provider path, you can perform work or retrieve information by using the methods and properties from the Motore di databaseDatabase Engine management object associated with the node.

  1. Prima di iniziareBefore You Begin

  2. Per utilizzare un nodo di percorso: Elenco di metodi e proprietà, Utilizzo di metodi e proprietàTo work on a path node: Listing Methods and Properties, Using Methods and Properties

Prima di iniziare Before You Begin

Dopo essere passati a un nodo in un percorso di provider Motore di databaseDatabase Engine è possibile eseguire due tipi di azioni:After you have navigated to a node in a Motore di databaseDatabase Engine provider path, you can perform two types of actions:

  • È possibile eseguire i cmdlet di Windows PowerShell che operano sui nodi, ad esempio Rename-Item.You can run Windows PowerShell cmdlets that operate on nodes, such as Rename-Item.

  • È possibile chiamare i metodi dal modello a oggetti di gestione di SQL ServerSQL Server associato, ad esempio SMO.You can call the methods from the associated SQL ServerSQL Server management object model, such as SMO. Ad esempio, se si passa al nodo Databases in un percorso, è possibile usare i metodi e le proprietà della classe Database .For example, if you navigate to the Databases node in a path, you can use the methods and properties of the Database class.

    Il provider SQL ServerSQL Server viene utilizzato per gestire gli oggetti in un'istanza del Motore di databaseDatabase Engine.The SQL ServerSQL Server provider is used to manage the objects in an instance of the Motore di databaseDatabase Engine. Non viene utilizzato per i dati nei database.It is not used to work with the data in databases. Se si è passati a una tabella o una vista, non è possibile utilizzare il provider per selezionare, inserire, aggiornare o eliminare i dati.If you have navigated to a table or view, you cannot use the provider to select, insert, update, or delete data. Usare il cmdlet Invoke-Sqlcmd per eseguire una query o per modificare dati in tabelle e viste nell'ambiente di Windows PowerShell.Use the Invoke-Sqlcmd cmdlet to query or change data in tables and views from the Windows PowerShell environment. Per altre informazioni, vedere cmdlet Invoke-Sqlcmd.For more information, see Invoke-Sqlcmd cmdlet.

Elenco di metodi e proprietà Listing Methods and Properties

Elenco di metodi e proprietàListing Methods and Properties

Per visualizzare i metodi e le proprietà disponibili per specifici oggetti o classi di oggetti, usare il cmdlet Get-Member .To view the methods and properties available for specific objects or object classes, use the Get-Member cmdlet.

Esempi: elencare metodi e proprietàExamples: Listing Methods and Properties

In questo esempio viene impostata una variabile di Windows PowerShell sulla classe SMO Database e vengono elencati i metodi e le proprietà: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  

Si può anche usare Get-Member per visualizzare un elenco di proprietà e metodi associati al nodo finale di un percorso di Windows PowerShell.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 questo esempio si passa al nodo Databases in un percorso SQLSERVER: e vengono elencate le proprietà della raccolta: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 questo esempio si passa al nodo AdventureWorks2012 in un percorso SQLSERVER: e vengono elencate le proprietà dell'oggetto: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  

Utilizzo di metodi e proprietà Using Methods and Properties

Utilizzo di metodi e proprietà SMOUsing SMO Methods and Properties

Per eseguire operazioni su oggetti di un percorso di provider Motore di databaseDatabase Engine è possibile utilizzare metodi e proprietà SMO.To perform work on objects from a Motore di databaseDatabase Engine provider path, you can use SMO methods and properties.

Esempi: utilizzo di metodi e proprietàExamples: Using Methods and Properties

In questo esempio viene usata la proprietà dello schema SMO per ottenere un elenco delle tabelle dallo schema Sales di AdventureWorks2012: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 questo esempio viene usato il metodo Script SMO per generare uno script che contiene le istruzioni CREATE VIEW necessarie per ricreare le viste in AdventureWorks2012: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 questo esempio viene utilizzato il metodo Create SMO per creare un database e quindi viene utilizzata la proprietà State per indicare se il database esiste: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  

Vedere ancheSee Also

Provider PowerShell per SQL Server SQL Server PowerShell Provider
Spostarsi all'interno dei percorsi di SQL Server PowerShell Navigate SQL Server PowerShell Paths
Conversione di URN in percorsi di provider di SQL Server Convert URNs to SQL Server Provider Paths
SQL Server PowerShellSQL Server PowerShell