SQL Server PowerShell Provider

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do AzureAzure Synapse AnalyticsPDW (Analytics Platform System)

O provedor do SQL Server para o Windows PowerShell expõe a hierarquia de objetos do SQL Server em caminhos semelhantes aos caminhos do sistema de arquivos. Você pode usar os caminhos para localizar um objeto e usar os métodos dos modelos SMO ( SQL Server Management Object) para executar ações nos objetos.

Observação

Há dois módulos do SQL Server PowerShell; SqlServer e SQLPS.

O módulo SqlServer é o módulo atual do PowerShell a ser usado.

O módulo SQLPS está incluído na instalação do SQL Server (para compatibilidade com versões anteriores), mas não está mais sendo atualizado.

O módulo do SqlServer contém versões atualizadas dos cmdlets no SQLPS e inclui novos cmdlets para dar suporte aos recursos mais recentes do SQL.

Instale o módulo SqlServer da Galeria do PowerShell.

Para obter mais informações, confira SQL Server PowerShell.

Benefícios do provedor do SQL Server PowerShell

Os caminhos implementados pelo provedor SQL Server habilitam a análise fácil e interativa de todos os objetos em uma instância do SQL Server. Você pode navegar nos caminhos usando aliases do Windows PowerShell semelhantes aos comandos usados para navegar em caminhos do sistema de arquivos.

A hierarquia do SQL Server PowerShell

Os produtos cujos modelos de objetos ou de dados podem ser representados em uma hierarquia usam os provedores do Windows PowerShell para expor as hierarquias. A hierarquia é exposta usando uma estrutura de unidades e caminhos semelhante à usada pelo sistema de arquivos do Windows.

Cada provedor do Windows PowerShell implementa uma ou mais unidades. Cada unidade é o nó raiz de uma hierarquia de objetos relacionados. O provedor do SQL Server implementa uma unidade SQLSERVER:. O provedor também define um conjunto de pastas primárias para a unidade SQLSERVER:. Cada pasta e suas respectivas subpastas representam o conjunto de objetos que podem ser acessados usando um modelo de objeto de gerenciamento do SQL Server . Quando o foco é uma subpasta em um caminho que começa com uma dessas pastas primárias, você pode usar os métodos do modelo de objeto associado para executar ações com o objeto representado pelo nó. As pastas do Windows PowerShell implementadas pelo provedor do SQL Server estão listadas na tabela a seguir:

Pasta Namespace do modelo de objeto do SQL Server Objetos
SQLSERVER:\SQL Microsoft.SqlServer.Management.Smo

Microsoft.SqlServer.Management.Smo.Agent

Microsoft.SqlServer.Management.Smo.Broker

Microsoft.SqlServer.Management.Smo.Mail
Objetos do banco de dados, como tabelas, exibições e procedimentos armazenados.
SQLSERVER:\SQLPolicy Microsoft.SqlServer.Management.Dmf

Microsoft.SqlServer.Management.Facets
Objetos de gerenciamento baseado em políticas, como políticas e facetas.
SQLSERVER:\SQLRegistration Microsoft.SqlServer.Management.RegisteredServers

Microsoft.SqlServer.Management.Smo.RegSvrEnum
Objetos de servidor registrados, como grupos de servidores e servidores registrados.
SQLSERVER:\Utility Microsoft.SqlServer.Management.Utility Objetos de utilitário, como instâncias gerenciadas do Mecanismo de Banco de Dados.
SQLSERVER:\DAC Microsoft.SqlServer.Management.Dac Objetos de aplicativo da camada de dados como pacotes do DAC e operações como implantação de um DAC.
SQLSERVER:\DataCollection Microsoft.SqlServer.Management.Collector Objetos de coletor de dados, como conjuntos de coleta e repositórios de configuração.
SQLSERVER:\SSIS Microsoft.SqlServer.Management.IntegrationServices Integration Services objetos como projetos, pacotes e ambientes.
SQLSERVER:\XEvent Microsoft.SqlServer.Management.XEvent Eventos Estendidos do SQL Server
SQLSERVER:\DatabaseXEvent Microsoft.SqlServer.Management.XEventDbScoped Eventos Estendidos do SQL Server
SQLSERVER:\SQLAS Microsoft.AnalysisServices Serviços de análise objetos como cubos, agregações e dimensões.

Por exemplo, você pode usar a pasta SQLSERVER:\SQL para iniciar caminhos que podem representar qualquer objeto com suporte pelo modelo de objeto do SMO. A parte à esquerda de um caminho SQLSERVER:\SQL é SQLSERVER:\SQL\ComputerName\InstanceName. Os nós após o nome da instância alternam entre coleções de objetos (como Bancos de Dados ou Exibições) e nomes de objetos (como AdventureWorks2022). Os esquemas não são representados como classes de objetos. Ao especificar o nó para um objeto de alto nível em um esquema, como uma tabela ou exibição, é preciso especificar o nome do objeto no formato SchemaName.ObjectName.

O seguinte exemplo mostra o caminho da tabela Vendor no esquema Purchasing do banco de dados AdventureWorks2022 em uma instância padrão do Mecanismo de Banco de Dados no computador local:

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

Para obter mais informações sobre a hierarquia de modelos de objeto do SMO, veja Diagrama de modelos de objetos SMO.

Os nós de coleção em um caminho são associados a uma classe de coleção no modelo de objeto associado. Os nós de nomes de objetos são associados a uma classe de objeto no modelo de objeto associado, como na tabela a seguir:

Caminho Classe do SMO
SQLSERVER:\SQL\MyComputer\DEFAULT\Databases DatabaseCollection
SQLSERVER:\SQL\MyComputer\DEFAULT\Databases\AdventureWorks2022 Database

Tarefas de provedor SQL Server

Descrição da tarefa Artigo
Descreve como usar cmdlets do Windows PowerShell para navegar pelos nós em um caminho, e a cada nó obtém uma lista dos objetos desse nó. Navegar em caminhos do SQL Server PowerShell
Descreve como usar os métodos e propriedades do SMO para relatar e executar trabalho no objeto representado por um nó em um caminho. Também descreve como obter uma lista dos métodos e propriedades do SMO para esse nó. Trabalhar com caminhos do SQL Server PowerShell
Descreve como converter um URN (Nome de Recurso Uniforme) de SMO em um caminho de provedor SQL Server. Converter URNs em caminhos do Provedor do SQL Server
Descreve como abrir conexões de Autenticação do SQL Server usando o provedor SQL Server . Por padrão, o provedor usa as conexões de Autenticação do Windows feitas usando as credenciais da conta Windows que executam a sessão do Windows PowerShell. Gerenciar a autenticação no PowerShell do Mecanismo de Banco de Dados

Próximas etapas

SQL Server PowerShell