Opeando con powershell (foreach, archivos de texto y por supuesto SQL Server)


En esta ocasión trabajaré con SQL Server,  powershell.
En esta ocasión voy a utilizar SQL Server 2008 para crear bases de datos de una lista txt.
Primeramente, voy a crear una lista de bases de datos en un archivo txt:

lista.txt


-----------------------------------------
productos
Ventas
Contabilidad
Stock
-----------------------------------------


Simplemente tengo un archivo de texto llamado lista.txt que contiene 4 palabras en 4 filas.
Ahora, lo que yo deseo es crear 4 bases de datos que se llamen productos, ventas, etc. Es decir, que usando powershell se creen estas 4 bases de datos de la lista.

Para ello, voy a  guardar los datos en una variable llamada $lista.
La sentencia en powershell sería la siguiente:

$lista=get-content c:\lista.txt

Para ver que todo funcione, podemos ver los $valores de lista con echo:
echo $lista



productos
Ventas
Contabilidad
Stock

Ahora se deben crear las bases de datos en sql server. Para ello voy a utilizar el comando invoke-sql junto con el foreach. La traducción de mi sentencia es: 
Para cada miembro de la variable crear una base de datos.

$lista | ForEach-Object {Invoke-SqlCmd -Query "create database $_"}

Si todo salió bien, deberíamos tener las bases de datos creadas en SQL Server:


Finalmente, para borrar todas las bases de datos:
$lista | ForEach-Object {Invoke-SqlCmd -Query "drop database $_"}

Invoke-SqlCmd -query permite lanzar cualquier tipo de sentencia desde powershell a SQL Server.

Tienes dudas ?. Quieres saber más ?. Escribe a este blog.







Comentarios

  1. hola estoy empezando en sql server en la instruccion que pusiste para crear bases de datos por medio de un .txt $lista | ForEach-Object {Invoke-SqlCmd -Query "create database $_"}
    el simbolo que esta despues de $lista cual es?? por que me marca error

    ResponderEliminar
  2. Hard to ignore such an amazing article like this. You really amazed me with your writing talent. Thank you for sharing again. 토토

    ResponderEliminar
  3. I'd like to speak about this website honestly confident us to try and do which! Cheers, high quality write-up.
    VIEWLINK: 바카라사이트

    ResponderEliminar
  4. This is really great work. Thank you for sharing such a useful information here in the blog. 경마

    ResponderEliminar
  5. Pretty! This has been an incredibly wonderful article. Thank you for supplying this information. 릴게임

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

The Deep Sea: una web interactiva para explorar las profundidades el mar y descubrir las extrañas criaturas que viven en él

Detectar el usuario de Windows utilizando C#

Lo nuevo de SQL Server 2008 respecto a SQL Server 2005