Archive for MSSQL

Contar días hábiles entre una fecha

La siguiente función para SQL Server permite contar la cantidad de días que existen entre un rango de fechas sin contar Sábados y Domingos.

  Su uso es muy simple:

    En este ejemplo se puede ver la variación que existe entre la función DateDiff y nuestra función.

Read more

Contar días sin Sábado ni Domingo

La siguiente es una  función de MSSQL Server, la cúal permite saber la cantidad de días que existe en un período determinado sin contar los fines de semana (sábado y domingo).

Ejemplo de Uso:

Read more

Truncar Fecha

De la siguiente manera es posible quitar las horas y los segundos a una fecha.

Read more

Reparar una base dañada

Reparar una base dañada El siguiente es un error común cuando se daña una base: Msg 824, Level 24, State 2, Line 11 SQL Server detected a logical consistency-based I/O error: incorrect pageid (expected 1:49876; actual 17253:-991032068). It occurred during a read of page (1:49876) in database ID 15 at offset 0x000000185a8000 in file ‘E:\Bases\SBDAXXXX.MDF’.  Additional messages in the SQL Server error log or system event log may provide more detail. This is a severe error condition that threatens database integrity and must be corrected immediately. Complete a full database consistency check (DBCC CHECKDB). This error can be caused by many factors; for more information, see SQL Server Books Online. A continuación los pasos que se debería seguir: Intentar hacer un backup de la base Obtener la cantidad de registros que hay en ese momento en cada tabla (script adjunto al final) Colocar la base en modo de […]

Read more

Mejorar rendimiento de SQL Server – Estadísticas de Espera

En este oficio se escucha de manera repetitiva frases como: “Mi servidor anda lento“, “Se tarda demasiado“, “como hago para que funcione más rápido“. Al intentar encontrar la causa del problema muchas veces no sabes dónde empezar. En esta serie de artículos veremos algunos pasos a seguir para tratar de determinar el motivo que lo […]

Read more

Como especificar el Puerto en el SQL Server Management Studio

Si tienen configurado el motor SQL Server en un puerto diferente al predeterminado (1433), para poder realizar una conexión desde el SQL Server Management Studio se debe ingresar de la siguiente manera: [HOST] , [PUERTO] Es decir que separamos el mismo con una coma (,). Ejemplo:  

Read more

Averiguar la intercalación de una base de datos

De la siguiente manera podrán averiguar la intercalación (collation) de una base de datos en MS SQL Server: TSQL: SELECT DATABASEPROPERTYEX(‘MASTER’, ‘Collation’) as Intercalacion; SQL Server Management Studio:

Read more

Obtener Base Actual

Cuando trabajamos con campos calculados a veces es necesario incluir el nombre de la base sobre la que está realizando la consulta. De esta manera si realizamos esta misma consulta en varias veces, y unimos el resultado tendremos siempre un dato agrupador que nos identificará la base origen. Esta función es DB_NAME(). Ejemplo: select db_name() as […]

Read more

Listar Tamaño de las Bases de Datos

El siguiente script en TSQL lista todas las bases de datos con sus respectivos tamaños en Megas y Gigas.

Complementa al siguiente script para listar las bases de datos con su ubicación: http://maurobernal.com.ar/blog/t-sql/listar-todas-las-bases-de-datos-con-su-respectiva-ubicacion-y-tamanos/

Read more

Verificar Backups por TSQL

Verificar que se hayan realizado correctamente los backups es tarea fundamental de un DBA. Para ello contamos con una serie de tablas provistar por Microsoft SQL Server para almacenar dicha información: msdb.dbo.backupfile msdb.dbo.backupmediafamily msdb.dbo.backupmediaset msdb.dbo.backupset   Los siguientes scripts pueden facilitar dicha tarea. Más adelante trabajaremos con más detalle.   Atención:   Si copian y pegan […]

Read more