Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El proveedor de PowerShell del motor de base de datos expone el conjunto de objetos de una instancia de SQL Server en una estructura similar a una ruta de acceso del archivo. Puede usar los cmdlets de Windows PowerShell para navegar por la ruta de acceso del proveedor y crear las unidades personalizadas para acortar la ruta de acceso que tiene que escribir.
Antes de empezar
Windows PowerShell implementa cmdlets para navegar por la estructura de ruta de acceso que representa la jerarquía de objetos compatible con un proveedor de PowerShell. Cuando ha navegado a un nodo de la ruta de acceso, puede usar otros cmdlets para realizar operaciones básicas en el objeto actual. Dado que los cmdlets se usan con frecuencia, tienen alias canónicos cortos. También hay un conjunto de alias que asigna los cmdlets a comandos del símbolo del sistema similares, y otro conjunto para los comandos shell de UNIX.
El proveedor de SQL Server implementa un subconjunto de los cmdlets del proveedor, que se muestran en la tabla siguiente.
cmdlet | Alias canónico | Alias de cmd | Alias de shell de UNIX | Descripción |
---|---|---|---|---|
Get-Location | gl | Pwd | Pwd | Obtiene el nodo actual. |
Set-Location |
Sl | cd, chdir | cd, chdir | Cambia el nodo actual. |
Get-ChildItem | gci | dir | ls | Enumera los objetos almacenados en el nodo actual. |
Get-Item | Gi | Devuelve las propiedades del elemento actual. | ||
Rename-Item | rni | Rn | Ren | Cambia el nombre de un objeto. |
Remove-Item | Ri | del, rd | rm, rmdir | Quita un objeto. |
Importante
Algunos identificadores de SQL Server (nombres de objeto) contienen caracteres que Windows PowerShell no admite en los nombres de ruta de acceso. Para obtener más información sobre cómo usar nombres que contengan estos caracteres, vea SQL Server Identifiers in PowerShell.
Información de SQL Server devuelta por Get-ChildItem
La información devuelta por Get-ChildItem (o sus alias dir e ls ) depende de la ubicación en una ruta de acceso de SQLSERVER.
Ubicación de la ruta de acceso | Resultados de Get-ChildItem |
---|---|
SQLSERVER:\SQL | Devuelve el nombre del equipo local. Si ha usado SMO o WMI para conectarse a instancias del motor de base de datos en otros equipos, también se muestran esos equipos. |
SQLSERVER:\SQL\nombreDeEquipo | La lista de instancias del motor de base de datos en el equipo. |
SQLSERVER:\SQL\nombreDeEquipo\nombreDeInstancia | Lista de tipos de objeto de nivel superior en la instancia, como Extremos, Certificados y Bases de datos. |
Nodo de clase de objeto, como Databases | Lista de objetos de ese tipo, como la lista de bases de datos: master, model, AdventureWorks20008R2. |
Nodo de nombre de objeto, como AdventureWorks2012 | Lista de los tipos de objeto contenidos en el objeto. Por ejemplo, una base de datos mostraría tipos de objeto como tablas y vistas. |
De forma predeterminada, Get-ChildItem no muestra ningún objeto del sistema. Use el parámetro Force para ver los objetos del sistema, como los objetos del esquema sys .
Unidades personalizadas
Windows PowerShell deja que los usuarios definan las unidades virtuales, a las que se hace referencia como unidades de PowerShell. Estos se corresponden con los nodos iniciales de una declaración de ruta. Se suelen usar para acortar las rutas de acceso que se escriben con frecuencia. SQLSERVER: las rutas de acceso pueden volverse largas, ocupando espacio en la ventana de Windows PowerShell y requiriendo mucho tecleo. Si va a trabajar mucho en un nodo de ruta de acceso determinado, puede definir una unidad de Windows PowerShell personalizada que se asigne a ese nodo.
Use Alias de Cmdlet de PowerShell
Use un alias de cmdlet
- En lugar de escribir un nombre completo de cmdlet, escriba un alias más corto que se asigna a un comando de símbolo de sistema.
Ejemplo de Alias (PowerShell)
Por ejemplo, puede usar uno de los conjuntos de cmdlets o alias siguientes para recuperar una lista de las instancias de SQL Server disponibles para navegar a la carpeta SQLSERVER:\SQL y solicitar la lista de elementos secundarios de la misma:
## Shows using the full cmdet name.
Set-Location SQLSERVER:\SQL
Get-ChildItem
## Shows using canonical aliases.
sl SQLSERVER:\SQL
gci
## Shows using command prompt aliases.
cd SQLSERVER:\SQL
dir
## Shows using Unix shell aliases.
cd SQLSERVER:\SQL
ls
Uso de Get-ChildItem
Devolver información mediante Get-Childitem
Vaya al nodo para el que desea obtener una lista de childrem.
Ejecuta Get-Childitem para obtener la lista.
Ejemplo de Get-ChildItem (PowerShell)
Estos ejemplos muestran la información devuelta por Get-Childitem para varios nodos en una ruta de acceso del proveedor de SQL Server.
## Return the current computer and any computer
## to which you have made a SQL or WMI connection.
Set-Location SQLSERVER:\SQL
Get-ChildItem
## List the instances of the Database Engine on the local computer.
Set-Location SQLSERVER:\SQL\localhost
Get-ChildItem
## Lists the categories of objects available in the
## default instance on the local computer.
Set-Location SQLSERVER:\SQL\localhost\DEFAULT
Get-ChildItem
## Lists the databases from the local default instance.
## The force parameter is used to include the system databases.
Set-Location SQLSERVER:\SQL\localhost\DEFAULT\Databases
Get-ChildItem -force
Crea una unidad personalizada
Creación y uso de una unidad personalizada
Utilice
New-PSDrive
para definir una unidad de disco personalizada. Use elRoot
parámetro para especificar la ruta de acceso representada por el nombre de la unidad personalizada.Haga referencia al nombre del disco personalizado en cmdlets de navegación de rutas, como
Set-Location
.
Ejemplo de unidad personalizada (PowerShell)
En este ejemplo se crea una unidad virtual denominada AWDB que se asigna al nodo para una copia desplegada de la base de datos de ejemplo AdventureWorks2012. La unidad virtual se usa para navegar a una tabla de la base de datos.
## Create a new virtual drive.
New-PSDrive -Name AWDB -Root SQLSERVER:\SQL\localhost\DEFAULT\Databases\AdventureWorks2012
## Use AWDB: to navigate to a specific table.
Set-Location AWDB:\Tables\Purchasing.Vendor
Véase también
Proveedor de SQL Server PowerShell Provider
Trabajar con rutas acceso de SQL Server PowerShell
Convertir URN en rutas de acceso del proveedor de SQL Server
SQL Server PowerShell