
En esta presentación que realicé en la
Facultad de Ciencias Económicas de la UBA(Universidad de Buenos Aires) con el patrocinio del
Grupo de Usuarios Microsoft, estuve mostrando algunos detalles prácticos de la programabilidad del SQL Server 2008. Esta presentación estuvo orientada a mostrar algunos detalles prácticos del lenguaje T-SQL, especialmente en temas de facilidad y productividad.
Comenzamos mostrando cómo se puede manipular la concurrencia mediante la utilización de los distintos niveles de aislamiento con las sentencias SET TRANSACTION ISOLATION LEVEL READ COMMITTED, SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED y el hint WITH (NOLOCK). Se explico las consecuencias de realizar lecturas sucias algo que no es muy conocido.
Luego mostré los nuevos operadores INTERSEC, EXCEPT, la sentencia CREATE SYNONYM y las common table expressions (CTE) que permiten simplificar la forma en que escribimos nuestro código.
Cuando explique las nuevas clausulas de la integridad referencial declarativa en la definición de las CONSTRAINT FOREIGN KEY, ON DELETE SET NULL, ON DELETE SET DEFAULT, ON UPDATE SET NULL, ON UPDATE SET DEFAULT, introducidas en SQL Server 2005, que completaban la especificación del ANSI estuvimos hablando de la diferentes problemáticas que se presentan cuando no se respetan las condiciones de integridad de datos.
También pudimos ver las novedades de la clausula TOP, las posibilidades de la clausula OUTPUT y el nuevo manejo estructurado de errores con BEGIN TRY, END TRY, BEGIN CATCH, END CATCH que abre nuevas posibilidades en la metodología de programación de procedimientos almacenados (STORED PROCEDURES).
Luego pasamos a la sentencia MERGE que permita realizar actualizaciones masivas de manera más eficiente y simple. Cuando vimos la posibilidad de usar columnas SPARSE y XML COLUMN_SET FOR ALL_SPARSE_COLUMNS , surgieron varias preguntas acerca del tipo de dato XML, introducido en SQL Server 2005 y una pregunta clásica de si se podían pasar desde el cliente “registros” en un XML como parámetro de un stored procedure. Entonces aproveche la ocasión para mostrar el nuevo tipo de parámetro tabla que se puede crear a partir de un tipo creado con CREATE TYPE.
Estuve muy a gusto con el auditorio y con los asistentes y organizadores y espero que lo hayan podido aprovechar.
Este es el contenido de los ejemplos contenidos en el archivo de demos:
- 01 - Isolation Levels.sql
- 02 - EXCEPT-INTERSECT.sql
- 03 - Synonym.sql
- 04 - CTE.sql
- 05 - DRI.sql
- 06 - TOP.sql
- 07 - OUTPUT.sql
- 08 - ERRORES.sql
- 09 - Merge.sql
- 10 - Sparse column SET.sql
- 11 - TVP-DATE-TIME.sql
FCE20090327 - SQL Practico - Demos.zip (9,00 kb)