Search This Blog

Friday, October 18, 2013

Ejecutar múltiples archivos SQL

Durante el Pass Summit en Charlotte, charlando con mi amigo Guillermo Taylor que por cierto les recomiendo leer su blog, hablábamos sobre la necesidad de ejecutar aproximadamente 4000 archivos SQL y cómo hacerlo rápidamente, bueno, durante esas charlas en los intermedios de más charlas llegamos a la conclusión de hacerlo utilizando PowerShell.

Ahora, imaginen un archivo .TXT con las siguientes características

C:\Queries\Query1.sql
D:\Consultas\Consulta1.sql
P:\MoreQueries\Query2.sql
P:\Consultas2\Consulta.sql



Bien, como pueden ver, el archivo contiene múltiples ubicaciones, bien, podríamos haberlo hecho utilizando SSIS (Como hacerlo con SSIS), pero solo para poner en practica nuestros skills con PowerShell decidimos hacerlo allí.

 

$archivo = "C:\ArchivosSQL\test.txt"
$entradas = gc $archivo
foreach ($entrada in $entradas)
{
    SQLCMD -S <SERVIDOR> -U <USUARIO> -P <PASSWORD> -d <BASE DE DATOS> -i $entrada
}




Enjoy it from the #Summit13 at #SQLPass

Tuesday, August 20, 2013

Antes y después del Merge – Upsert SQL Server

Hace poco tiempo un cliente me comentaba sobre la necesidad de ejecutar comandos de tipo UPSERT, típicamente este proceso lo venía haciendo de forma manual, hacia una revisión uno a uno de los campos y luego mediante estructuras en TSQL hacia la carga o la actualización a su base de datos, por eso me dispuse a escribir este post.

Desde la versión 2008 de Microsoft SQL Server, contamos con una nueva forma de actualizar o insertar datos a una tabla, este comando nos permite ir un paso más allá y en una sola transacción efectuar todo el proceso, de golpe y sin mayores complicaciones.

Ver todo el post en:

Thursday, January 31, 2013

Como determinar que puerto esta utilizando SQL Server 2012 Analysis Services

Un inconveniente común ahora entre muchos clientes que han implementado SQL Server Analysis Services en su versión 2012, es el cambio dinámico de puertos, típicamente estábamos acostumbrados a tener un puerto fijo en SSAS en versiones anteriores del producto, a partir de SQL Server 2012 y específicamente hablando de implementaciones de SSAS Tabular Mode, nos encontramos con puertos dinámicos, de esta forma, si el cliente reinicia su servidor o reinicia los servicios, el puerto cambiara dinámicamente, muchas aplicaciones usan queries a RPC para determinar que puerto esta utilizando un servicio y de esa forma dinámicamente determinar a que puerto debe conectarse, como es el caso de SQL Server Management Studio y que redunda en la razón por la cual muchos no detectamos esto hasta tanto alguien mas intenta ingresar utilizando opciones diferentes como por ejemplo PowerView desde Microsoft SharePoint.

Con el fin de determinar que puerto esta utilizando SQL Server Analysis Services 2012 después de un reinicio, utilizaremos el command prompt y un par de líneas de código que retornaran la información deseada. (Ver todo el articulo)

LinkWithin

Related Posts Plugin for WordPress, Blogger...