Tech-ed Online

by 22. julio 2010 21:26

 

Este evento es uno de los más importantes a nivel mundial sobre tecnologías Microsoft.

Una de las cosas muy piola que tiene es que sus sesiones están disponibles para descarga y vista online.

Podrán encontrar muchas sesiones de SQL Server y de un nivel medio / avanzado.

Es un recurso súper interesante para aquellos que quieren estar actualizar y con demos y presentaciones de alto nivel, la única macana es que están todas en inglés.

Aquí les dejo los link

Database Platform

Business Intelligence

Tags:

Material | Comunidad | SQL 2008 | SQL 2005 | Reporting Service | Videos

Herramientas para analizar buenas prácticas en SQL Server.

by 21. julio 2010 04:48

 

En toda empresa o proceso hablamos mucho de las buenas prácticas de trabajo.

Para SQL Server hay un número de buenas prácticas que nos permiten asegurar la calidad del código que escribimos sobre la base de datos como así también revisar otros aspectos administrativos (seguridad, backups, etc).

El tema es que analizar todas estas buenas prácticas por lo general es complejo, pero por suerte disponemos de algunas herramientas que nos da el mismo fabricante (En este caso Microsoft)

En los siguientes links les dejare las herramientas disponibles para cada versión de SQL Server.

Estas herramientas se las recomiendo de verdad ya que están muy buenas para analizar cómo estamos trabajando con nuestro SQL Server y así poder establecer que cambios hacer para lograr la mejor práctica

En futuros post y videos estaré mostrando como se utilizan cada una de ellas

 

SQL Server 2000 Best Practices Analyzer

SQL Server 2005 Best Practices Analyzer

Microsoft® SQL Server® 2008 R2 Best Practices Analyzer

Microsoft Baseline Security Analyzer

Tags:

Tunning | SQL 2008 | SQL 2005 | Administracion

Como resolver querys jerárquicas en SQL 2005 o 2008

by 18. abril 2009 15:10

En muchas oportunidades tenemos la necesidad de resolver este tipo de querys, por ejemplo para una tabla de empleados, de menús , una estructura de productos, etc..... Armar este tipo de querys jerárquicas no suelen ser algo simple para la mayoría de los desarrolladores. En este ejemplo que les muestro en el post hare una query jerárquica en SQL 2005 o 2008 utilizando unas nuevas sentencias TSQL llamada CTE (Common Table Expresion).

-- CREAMOS UNA TABLA EMPLEADOS

IF OBJECT_ID('DBO.EMPLEADOS') IS NOT NULL
   DROP TABLE DBO.EMPLEADOS
GO

CREATE TABLE DBO.EMPLEADOS (ID INT NOT NULL,JEFE_ID INT NULL,
                            NOMBRE VARCHAR(300),Puesto varchar(300))
GO

INSERT INTO DBO.EMPLEADOS VALUES (100,NULL,'Martin','CEO')
INSERT INTO DBO.EMPLEADOS VALUES (101,100,'Maxi','Gerente Sistemas')
INSERT INTO DBO.EMPLEADOS VALUES (102,100,'Veronica','Gerente Calidad')
INSERT INTO DBO.EMPLEADOS VALUES (103,101,'Javier','Analista SR')
INSERT INTO DBO.EMPLEADOS VALUES (104,101,'Gabriel','DBA')
INSERT INTO DBO.EMPLEADOS VALUES (105,102,'Ana','Auditora')
INSERT INTO DBO.EMPLEADOS VALUES (106,103,'Luis','Programador')
INSERT INTO DBO.EMPLEADOS VALUES (107,105,'Jose','Asistente')
GO

-- MOSTRAMOS EL ORGANIGRAMA HASTA EL NIVEL 2

WITH REPORTE(JEFE_ID, ID,NOMBRE,PUESTO,NIVEL) AS 
(
    SELECT JEFE_ID, ID,NOMBRE,PUESTO, 0 AS NIVEL
    FROM DBO.EMPLEADOS
    WHERE JEFE_ID IS NULL -- TRAEMOS TODOS LOS QUE NO TIENEN JEFES 
    UNION ALL
    SELECT e.JEFE_ID, e.ID, E.NOMBRE,E.PUESTO,NIVEL + 1
    FROM DBO.EMPLEADOS e
        INNER JOIN REPORTE d
        ON e.JEFE_ID = d.ID 
)
SELECT REPORTE.JEFE_ID, REPORTE.ID, REPORTE.NOMBRE,REPORTE.PUESTO,
EMPLEADOS.NOMBRE AS JEFE_NOMBRE, EMPLEADOS.PUESTO AS PUESTO_JEFE 
FROM REPORTE LEFT JOIN DBO.EMPLEADOS ON
REPORTE.JEFE_ID = EMPLEADOS.ID
WHERE NIVEL <= 2 
GO

 

En SQL Server 2008 disponemos además de esto la posibilidad de utilizar un tipo de dato jerárquico llamado Hierarchyid

Tags:

TSQL | How To | SQL 2005 | SQL 2008

Maximiliano Damian Accotto