SQL Server PowerShell Provider

Se aplica a: síSQL Server (todas las versiones admitidas) SíAzure SQL Database SíInstancia administrada de Azure SQL síAzure Synapse Analytics síAlmacenamiento de datos paralelos

El proveedor de SQL Server para Windows PowerShell expone la jerarquía de objetos de SQL Server en rutas de acceso similares a las rutas de acceso al sistema de archivos. Puede usar las rutas de acceso con el fin de buscar un objeto y, luego, usar los métodos de los modelos de Objetos de administración de SQL Server (SMO) para realizar acciones en los objetos.

Nota

Hay dos módulos de SQL Server PowerShell: SqlServer y SQLPS.

El módulo SqlServer es el módulo de PowerShell actual que se va a usar.

El módulo SQLPS está incluido en la instalación de SQL Server (por motivos de compatibilidad con versiones anteriores), pero ya no se actualiza.

El módulo SqlServer contiene versiones actualizadas de los cmdlets en SQLPS e incluye cmdlets para admitir las características más recientes de SQL.

Instale el módulo SqlServer desde la Galería de PowerShell.

Para más información, consulte el artículo sobre SQL Server PowerShell.

Ventajas del proveedor de PowerShell de SQL Server

Las rutas de acceso que implementa el proveedor de SQL Server habilitan la revisión sencilla e interactiva de todos los objetos de una instancia de SQL Server. Puede navegar por las rutas de acceso mediante alias de Windows PowerShell similares a los comandos que se usan normalmente para navegar por las rutas de acceso al sistema de archivos.

Jerarquía de SQL Server PowerShell

Los productos cuyos datos o modelos de objetos se pueden representar en una jerarquía usan proveedores de Windows PowerShell para exponer las jerarquías. La jerarquía se expone mediante el uso de una unidad y una estructura parecidas a las que usa el sistema de archivos de Windows.

Cada proveedor de Windows PowerShell implementa una o varias unidades. Cada unidad es el nodo raíz de una jerarquía de objetos relacionados. El proveedor de SQL Server implementa un SQLSERVER: unidad de disco. El proveedor también define un conjunto de carpetas principales para el SQLSERVER: unidad de disco. Cada carpeta y sus subcarpetas representan el conjunto de objetos a los que se puede tener acceso usando un modelo de objetos de administración de SQL Server . Cuando se centra en una subcarpeta de una ruta de acceso que se inicia con una de estas carpetas principales, se pueden usar los métodos del modelo de objetos asociado para realizar las acciones en el objeto representado por el nodo. En la tabla siguiente se muestran las carpetas de Windows PowerShell que implementa el proveedor SQL Server:

Carpeta Espacio de nombres del modelo de objetos de 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 de base de datos, como tablas, vistas y procedimientos almacenados.
SQLSERVER:\SQLPolicy Microsoft.SqlServer.Management.Dmf

Microsoft.SqlServer.Management.Facets
Objetos de administración basada en directivas, como directivas y facetas.
SQLSERVER:\SQLRegistration Microsoft.SqlServer.Management.RegisteredServers

Microsoft.SqlServer.Management.Smo.RegSvrEnum
Objetos de servidor registrado, como los grupos de servidores y los servidores registrados.
SQLSERVER:\Utility Microsoft.SqlServer.Management.Utility Los objetos de utilidad, como las instancias administradas de Motor de base de datos.
SQLSERVER:\DAC Microsoft.SqlServer.Management.Dac Objetos de aplicación de capa de datos, como los paquetes DAC, y operaciones como la implementación de una DAC.
SQLSERVER:\DataCollection Microsoft.SqlServer.Management.Collector Objetos de recopilador de datos, como conjuntos de recopilación y almacenes de configuración.
SQLSERVER:\SSIS Microsoft.SqlServer.Management.IntegrationServices Integration Services como proyectos, paquetes, y entornos.
SQLSERVER:\XEvent Microsoft.SqlServer.Management.XEvent Eventos extendidos de SQL Server
SQLSERVER:\DatabaseXEvent Microsoft.SqlServer.Management.XEventDbScoped Eventos extendidos de SQL Server
SQLSERVER:\SQLAS Microsoft.AnalysisServices Analysis Services objetos como cubos, agregaciones, y dimensiones.

Por ejemplo, puede usar la carpeta SQLSERVER:\SQL para iniciar rutas de acceso que puedan representar cualquier objeto admitido por el modelo de objetos SMO. La parte inicial de una ruta de acceso SQLSERVER:\SQL es SQLSERVER:\SQL\nombreDeEquipo\nombreDeInstancia. Los nodos que siguen al nombre de instancia alternan entre colecciones de objetos (como Bases de datos o Vistas) y nombres de objeto (como AdventureWorks2012). Los esquemas no se representan como clases de objeto. Cuando se especifica el nodo para un objeto de nivel superior en un esquema, como una tabla o una vista, se debe especificar el nombre de objeto en el formato nombreDeEsquema.nombreDeObjeto.

En el siguiente ejemplo se muestra la ruta de acceso de la tabla Vendor en el esquema Purchasing de la base de datos AdventureWorks2012 en una instancia predeterminada de Motor de base de datos en el equipo local:

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

Para obtener más información acerca de la jerarquía del modelo de objetos SMO, vea SMO Object Model Diagram.

Los nodos de colección de una ruta de acceso se asocian con una clase de colecciones del modelo de objetos asociado. Los nodos de nombre de objeto se asocian a una clase de objetos del modelo de objetos asociado, como en la tabla siguiente:

Path Clase SMO
SQLSERVER:\SQL\MyComputer\DEFAULT\Databases DatabaseCollection
SQLSERVER:\SQL\MyComputer\DEFAULT\Databases\AdventureWorks2012 Database

Tareas del proveedor de SQL Server

Descripción de la tarea Artículo
Describe cómo usar los cmdlets de Windows PowerShell para navegar por los nodos de una ruta de acceso, y en cada nodo obtener una lista de los objetos de ese nodo. Navegar por las rutas de acceso de SQL Server PowerShell
Describe cómo usar los métodos y las propiedades de SMO para notificar y trabajar en el objeto representado por un nodo de una ruta de acceso. También describe cómo obtener una lista de los métodos y propiedades de SMO para ese nodo. Trabajar con rutas acceso de SQL Server PowerShell
Describe cómo convertir un nombre de recursos uniforme (URN) (URN) de SMO a una ruta de acceso del proveedor de SQL Server. Convertir URN en rutas de acceso del proveedor de SQL Server
Describe cómo abrir las conexiones de autenticación de SQL Server mediante el proveedor de SQL Server . De forma predeterminada, el proveedor usa conexiones con autenticación de Windows realizadas mediante las credenciales de la cuenta de Windows que ejecuta la sesión de Windows PowerShell. Administrar la autenticación en PowerShell del motor de base de datos

Pasos siguientes

SQL Server PowerShell