sábado, 16 de julio de 2011

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.







People who read this post also read :



16 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. Nice post, Keep it up. Thanks for sharing. Its a Very Great and Amazing Blog Dear This is Very Great and Helpful. I know this site provides good content and more information,
    Are there any websites that offer these features and quality?
    Hotspot Shield Elite Crack
    Lumion Crack
    Cubase Pro Crack

    ResponderEliminar
  3. I will recommend your website to everyone. You have a very good gloss. Write more high-quality articles. I support you. 바카라사이트

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

    ResponderEliminar
  5. Excellent Blog! I would like to thank you for the efforts you have made in writing this post. 바카라사이트

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

    ResponderEliminar
  7. Great information, thanks for sharing it with us 토토사이트

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

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

    ResponderEliminar
  10. Very interesting information and i really glad to getting this information. 토토사이트

    ResponderEliminar