Sleep en Script T-SQL
Digamos que deseas esperar durante 10 segundos o hasta un determinado momento antes de proseguir adelante en un script. Este es el Transact SQL a utilizar:
WAITFOR Delay '000: 00:10 '
Digamos que deseas esperar durante 10 segundos o hasta un determinado momento antes de proseguir adelante en un script. Este es el Transact SQL a utilizar:
WAITFOR Delay '000: 00:10 '
Con lo años he tenido algunos de los mas extraños y complejos requerimientos de consultas y reportes que te puedas imaginar.
Los más dificiles suelen implicar algun tipo de regla de negocio extraña o requerimiento que incluyen parametros de fechas, logica, rangos, etc. He puesto este código junto con el fin de precalcular muchos elementos de fechas caracterizadas y ser capaz de determinar rapidamente varios valores y caracteristicas de las fechas sin necesidad de romperce la cabeza cada vez que las cosas se ponen dificiles.
Leer más…
USO
En primer lugar tienes que ejecutar el script que esta al final de este artículo en la base de datos donde deseas crear este procedimiento.
Entonces, puedes ejecutar el procedimiento almacenado con la siguiente declaración:
EXEC sp_ObjectExplore 'Nombre_BasedeDatos.esquema.nombreTabla'
No es necesario proporcionar Nombre_BasedeDatos y el esquema (por ejemplo: dbo) cuando la tabla está en la misma base de datos que el procedimiento.
Si deseas métricas adicionales sobre la distribución de todas las variables numéricas, ejecútalo con el parámetro de @distribución=’yes’.
Leer más…
Tienes idea!. Las operaciones con variables de tablas no se pueden deshacer. Solo llenando tu log desde la variable de tabla puedes llenar hasta que punto se quedo tu transaccion. Por su puesto, tienes que recordar, que todas las entradas que preceden en el log al error fueron deshechas (rollbak). Si corriges el error de tiempo de ejecucion en la linea 26, la transaccion es confirmada (commit) y la vida continua.
Leer más…
Te ha sucedió que estas realizando algún proceso sobre una base de datos y por circunstancias casuales el servidor termina reiniciándose. Todo está normal hasta que te das cuenta que tu base de datos sigue por un buen tiempo en el estado «en recuperación», y cuando intentas realizar cualquier operación ocurren bloqueos o bien te arroja el siguiente error:
Check statement aborted. Database contains deferred transactions.
¿Qué podemos hacer para solucionar este problema?
SET y SELECT pueden ser usados para asignar valores a las variables a través de T-SQL. Ambos cumplen su tarea, pero en algunos casos se pueden producir resultados inesperados. En este artículo menciono detalles sobre las consideraciones para elegir entre los métodos SET y SELECT al asignar un valor a una variable.
En la mayoría de los casos SET y SELECT pueden ser utilizados alternativamente sin ningún efecto.
Leer más…
Dos de las mejores adiciones al T-SQL en SQL Server 2005 son las expresiones de tabla común (CTE), y la función Row_number (). En este artículo vamos a ver cómo se pueden utilizar estas dos características juntas para proporcionar una solución elegante a un problema histórico.
En primer lugar daremos una mirada muy rápida en cada uno de ellos.
Leer más…
Un script para revelar que los inicios de sesión tienen acceso al servidor SQL a través de los grupos de Windows.
Si utiliza autenticación de Windows y tiene grupos de Windows como inicios de sesión este script te puede ayudar.
Revela los miembros de los grupos de Windows y sus permisos de servidor.
Esto es especialmente útil si no eres el administrador de red o no tienes acceso a las herramientas del Active Directory.
Espero que ayude a alguien…
Leer más…
Tienes algunos problemas con SQL Server. De vez en cuando tienes períodos en los cuales incluso la ejecución de un simple SELECT demora más de un minuto. Durante este período, el uso de CPU y memoria en el servidor tienen una apariencia normal. Haz realizado algún control básico sobre el servidor utilizando el monitor de rendimiento, pero con esto no se ha descubierto nada y ya no tienes más ideas. ¿Cuál sería el siguiente paso en el diagnóstico del problema?
Te pones a revisar los procesos que están corriendo en el servidor SQL Server y ves que la mayoría tiene un tipo de espera CXPACKET.
Leer más…
Cuando tienes servidores SQL Server con la configuración de intercalación diferente, tus bases de datos pueden ser diferentes en estos servidores, cuando no se especifique la intercalación de manera explícita. Para solucionar esto, es necesario modificar todos los campos con una secuencia de intercalación diferente. Tienes que hacer esto manualmente, mediante la apertura de cada tabla en el Administrador corporativo del SQL, revisar cada columna, y cambiar la secuencia de intercalación. Es innecesario decir que esta es una tarea tediosa.
Leer más…