aplicaciones tipo data-tier en visual studio 2010 y sql ... server.data-tie… · cualquier...

23
Aplicaciones tipo "Data-Tier" en Visual Studio 2010 y SQL Server 2008 R2. Marino Posadas MVP C# MCAD, MCSD, MSFP @MarinoPosadas

Upload: others

Post on 03-May-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Aplicaciones tipo "Data-Tier"

en Visual Studio 2010 y SQL

Server 2008 R2.

Marino PosadasMVP C#

MCAD, MCSD, MSFP

@MarinoPosadas

Page 2: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Contenido

• Los proyectos Sql Server "Data-Tier"

• Estructura de la aplicación generada

• Análisis estático de código

• Mecanismos de instalación de los archivos .dacpac– Desde SSMS y desde V.Studio 2010

• Modificaciones y actualizaciones

• Comparación de Schemas

• Ingeniería inversa

• Conclusiones

Page 3: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

El problema de negocio

• El despliegue de la capa de datos resulta difícil centralizar y controlar

• Pueden existir distintas políticas de despliegue para diferentes versiones

• Se deben de comprobar y mantener restricciones de despliegue

• Las actualizaciones complican aún más la situación

• Muchos DBA no conocen las Aplicaciones de BB.DD.

Page 4: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Los proyectos Sql Server "Data-Tier"

• Disponible como un tipo de proyecto de BB.DD

Page 5: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Los proyectos Sql Server "Data-Tier"

• Todos los objetos creados para el proyecto se compilan:

• La lógica y los elementos del servidor de destino están presentes en su totalidad

– Data Generation Plans– Schema Comparisons– Schema Objects

• Database Level Objects• Schemas (dbo)

– Programmability– Service Broker– Synonyms– Tables– Views

• Server Level Objects– Scripts para despliegue

Page 6: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Los proyectos Sql Server "Data-Tier"

• El proceso de compilación genera un archivo de extensión .dacpac que contiene toda la lógica y los datos necesarios para reproducir la estructura en cualquier instancia de SQL Server

• Basta con ir a la opción Implementar Aplicación de Capa de Datos en SSMS…

.dacpac.dacpac

Page 7: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Los proyectos Sql Server "Data-Tier": el despliegue

• …o con la opción "Deploy" (Publicar) desde Visual Studio 2010– Habiendo establecido previamente una cadena de conexión al servidor de

destino

Page 8: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Los proyectos Sql Server "Data-Tier": el desarrollo

• En el desarrollo contamos con todas las opciones deseables por los programadores:

– Intellisense y Ventanas de Propiedades

– Depurador

– Editor de lenguaje T-SQL

– An

– Diseñador de políticas de despliegue

– Mecanismos de visualización del Plan de Ejecución y las Estadísticas vinculadas con cada proceso

– Validación de los contenidos y las políticas de despliegue.

– Y mucho mas…

Page 9: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Los proyectos Sql Server "Data-Tier": Intellisense y Ventanas de Propiedades

Page 10: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Los proyectos Sql Server "Data-Tier": Depurador

Page 11: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Los proyectos Sql Server "Data-Tier":

Analizador Estático de Código

Page 12: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Los proyectos Sql Server "Data-Tier":

Diseñador de políticas de despliegue

Page 13: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Los proyectos Sql Server "Data-Tier":

Visualización del Plan de Ejecución y las Estadísticas

Page 14: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Los proyectos Sql Server "Data-Tier":

Validación sintáctica de SQL

• Validación de la política de despliegue

Page 15: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

DEMO

• Creación de un proyecto simple• Creación de objetos típicos de servidor:

• Tabla• Vista• Procedimiento Almacenado

• Análisis Estático de Código• Compilación del proyecto y generación del paquete• Instalación desde SSMS• Instalación alternativa desde Visual Studio 2010

Page 16: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Los proyectos Sql Server "Data-Tier": Actualizaciones

• Las actualizaciones son una de las opciones más potentes de este tipo de proyectos:

– Basta con cambiar, añadir o eliminar cualquier objeto del Schema y una nueva recompilación contendrá los cambios.

– Una actualización se realiza como un despliegue más, pero…

• No afecta a los objetos y/o datos existentes

– El proceso realiza una validación de incoherencias

• Posibles modificaciones inválidas de tipo manual

• Permite realizar un Rollback en caso de fallo

Page 17: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Los proyectos Sql Server "Data-Tier": Comparador de Schemas

• Efectúa un análisis comparativo:– Del proyecto con la BBDD de destino

– Del proyecto con otro Proyecto

– Del proyecto con una base de datos existente

– … O cualquier combinación de estas posibilidades

Page 18: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Los proyectos Sql Server "Data-Tier": Comparador de Schemas

• Genera una ventana interactíva de Análisis de Cambios

Page 19: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

DEMO

• Cambio en el Schema y comprobación de validaciones• Utilización de Schema Comparer• Uso de la opción de ingeniería inversa sobre bases de

datos existentes

Page 20: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Resumen

• Un Tipo de proyecto que facilita enormemente la implementación y el despliegue de la capa de datos

• El despliegue funciona igualmente desde SQL Server Management Studio que desde Visual Studio 2010

• Se puede trabajar sobre un proyecto existente, o desde uno totalmente nuevo.

• Podemos reproducir toda la lógica de SQL Server 2008 R2 como parte de nuestra solución

Page 21: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Licencias Microsoft, Utilidades y Libros

Page 22: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Formación, Consultoría y Seminarios

Page 23: Aplicaciones tipo Data-Tier en Visual Studio 2010 y SQL ... Server.Data-Tie… · cualquier instancia de SQL Server ... (Publicar) desde Visual Studio 2010 –Habiendo establecido

Formación, Consultoría y Seminarios

Visítanos en

www.danysoft.com

902 123 146

Gracias