![Page 1: Mejorando el Acceso a tu Base de Datos SQL Server Eladio Rincón (eladio@solidq.com) Mentor y SQL Server MVP Solid Quality Mentors DEV305](https://reader035.vdocuments.co/reader035/viewer/2022062301/5665b4911a28abb57c92401f/html5/thumbnails/1.jpg)
Mejorando el Acceso a tu Base de Datos SQL Server
Eladio Rincón ([email protected])Mentor y SQL Server MVP
Solid Quality Mentors
DEV305
![Page 2: Mejorando el Acceso a tu Base de Datos SQL Server Eladio Rincón (eladio@solidq.com) Mentor y SQL Server MVP Solid Quality Mentors DEV305](https://reader035.vdocuments.co/reader035/viewer/2022062301/5665b4911a28abb57c92401f/html5/thumbnails/2.jpg)
Solid Quality MentorsAyudamos a obtener lo mejor de su sistema SQL ServerMentoring, formación y consultoría en proyectos:
tradicionalmente de Bases de Datosde Inteligencia de Negociode Arquitecturas de Sistemasde Colaboración (MOSS, Enterprise Search)
http://www.solidq.comhttp://blogs.solidq.com [email protected]
![Page 3: Mejorando el Acceso a tu Base de Datos SQL Server Eladio Rincón (eladio@solidq.com) Mentor y SQL Server MVP Solid Quality Mentors DEV305](https://reader035.vdocuments.co/reader035/viewer/2022062301/5665b4911a28abb57c92401f/html5/thumbnails/3.jpg)
Mejorando el Acceso a tu SQL Server… O ¿qué Puedes Hacer como Desarrollador?
AgendaHerramientas (introducción)¿Miedo a .NET dentro de SQL Server?¿Usamos objetos programables?
¿Vistas? ¿UDFs?
Procedimientos Almacenados¿por qué sí?
Tratemos de entender como funciona cada cosa
![Page 4: Mejorando el Acceso a tu Base de Datos SQL Server Eladio Rincón (eladio@solidq.com) Mentor y SQL Server MVP Solid Quality Mentors DEV305](https://reader035.vdocuments.co/reader035/viewer/2022062301/5665b4911a28abb57c92401f/html5/thumbnails/4.jpg)
Mejorando el Acceso a tu SQL Server Herramientas a Utilizar
SQL Server Management StudioAnálisis de consultas con pequeños cambios
SQL ProfilerTraza por defecto con pequeños cambios
Veámoslo rápido…
![Page 5: Mejorando el Acceso a tu Base de Datos SQL Server Eladio Rincón (eladio@solidq.com) Mentor y SQL Server MVP Solid Quality Mentors DEV305](https://reader035.vdocuments.co/reader035/viewer/2022062301/5665b4911a28abb57c92401f/html5/thumbnails/5.jpg)
Mejorando el Acceso a tu SQL Server¿Miedo a .NET dentro del Servidor?
¿No es seguro? SAFE, EXTERNAL_ACCESS, UNSAFE Usa la sentencia GRANT para asignar permisosGranularidad a nivel de objeto que usa el assembly
¡Entiende cuando es más eficiente!Cuando usarlo
Cálculos complejos; i.e.: funciones de agregadoReferencias a librerías .NET
Cuando no usarloAcceso a datos
![Page 6: Mejorando el Acceso a tu Base de Datos SQL Server Eladio Rincón (eladio@solidq.com) Mentor y SQL Server MVP Solid Quality Mentors DEV305](https://reader035.vdocuments.co/reader035/viewer/2022062301/5665b4911a28abb57c92401f/html5/thumbnails/6.jpg)
Mejorando el Acceso a tu SQL Server¿Miedo a .NET dentro del Servidor?
DemoFunciones de AgregadoExpresiones Regulares en SQL Server
"La simplicidad llevada al extremo se convierte en elegancia"
Jon Franklin
![Page 7: Mejorando el Acceso a tu Base de Datos SQL Server Eladio Rincón (eladio@solidq.com) Mentor y SQL Server MVP Solid Quality Mentors DEV305](https://reader035.vdocuments.co/reader035/viewer/2022062301/5665b4911a28abb57c92401f/html5/thumbnails/7.jpg)
Mejorando el Acceso a tu SQL ServerObjetos Programables
Vistas¿Para qué usarlas?
SimplificaciónAcceso más “fácil” (leer, modificar, borrar)Gestión de permisos
Alternativa a estructuras físicas existentesVistas indexadasVistas particionadas
¿Qué debes evitar?Generalización de vistas“Cruzar” objetos no necesarios
![Page 8: Mejorando el Acceso a tu Base de Datos SQL Server Eladio Rincón (eladio@solidq.com) Mentor y SQL Server MVP Solid Quality Mentors DEV305](https://reader035.vdocuments.co/reader035/viewer/2022062301/5665b4911a28abb57c92401f/html5/thumbnails/8.jpg)
Mejorando el acceso a tu SQL Server¿Objetos Programables?
DemoVistas de vistas de vistas…
"Hazlo todo tan simple como sea posible, pero no más simple"
Albert Einstein
![Page 9: Mejorando el Acceso a tu Base de Datos SQL Server Eladio Rincón (eladio@solidq.com) Mentor y SQL Server MVP Solid Quality Mentors DEV305](https://reader035.vdocuments.co/reader035/viewer/2022062301/5665b4911a28abb57c92401f/html5/thumbnails/9.jpg)
Mejorando el Acceso a tu SQL ServerObjetos Programables
Funciones Definidas de Usuario; usado para:Simplificación y generalización de código existente
Tipo1: Escalares“Resolución de constantes”Convertir un caso de uso en procedural
Tipo2 y Tipo3: de Resultado de TablasSimular “vistas parametrizadas”JOINs con Tablas o UDFs (sentencia APPLY)
¿Qué debes evitar?Puede llegar a funcionar como un cursor
![Page 10: Mejorando el Acceso a tu Base de Datos SQL Server Eladio Rincón (eladio@solidq.com) Mentor y SQL Server MVP Solid Quality Mentors DEV305](https://reader035.vdocuments.co/reader035/viewer/2022062301/5665b4911a28abb57c92401f/html5/thumbnails/10.jpg)
Mejorando el acceso a tu SQL Server¿Objetos Programables?
DemoFunciones Definidas de Usuario
"Hazlo todo tan simple como sea posible, pero no más simple"
Albert Einstein
![Page 11: Mejorando el Acceso a tu Base de Datos SQL Server Eladio Rincón (eladio@solidq.com) Mentor y SQL Server MVP Solid Quality Mentors DEV305](https://reader035.vdocuments.co/reader035/viewer/2022062301/5665b4911a28abb57c92401f/html5/thumbnails/11.jpg)
Mejorando el Acceso a tu SQL ServerProcedimientos Almacenados ¿Por qué sí?
SeguridadGestión basada a nivel de SP (no por objeto base)
Encapsulación: Punto único de entrada poco acoplamiento, alta cohesión
RendimientoVs. consultas ad-hoc
Parsing, validaciones, seguridad, exec plan, …Vs. consultas preparadas
Gestión de redLos SPs son más cuidadosos con la memoria
Monitoriza la gestión del buffer pool
Mantenimiento: unidad centralizada para:Mejorar proceso, optimización, gestión de bugs, …
AdsfadsfadsfAdsfadsfasdf
![Page 12: Mejorando el Acceso a tu Base de Datos SQL Server Eladio Rincón (eladio@solidq.com) Mentor y SQL Server MVP Solid Quality Mentors DEV305](https://reader035.vdocuments.co/reader035/viewer/2022062301/5665b4911a28abb57c92401f/html5/thumbnails/12.jpg)
Mejorando el acceso a tu SQL Server Procedimientos Almacenados ¿Por qué sí?
DemoProcedimientos Almacenados vs
Consultas ad-hoc“Cuando una persona desea realmente algo, el Universo entero conspira para que pueda realizar su sueño“
Paulo Coelho
![Page 13: Mejorando el Acceso a tu Base de Datos SQL Server Eladio Rincón (eladio@solidq.com) Mentor y SQL Server MVP Solid Quality Mentors DEV305](https://reader035.vdocuments.co/reader035/viewer/2022062301/5665b4911a28abb57c92401f/html5/thumbnails/13.jpg)
Mejorando el Acceso a tu SQL Server
ResumenHerramientas: SQL Profiler, SSMSFuera complejos con .NETUsa los objetos programables correctamenteProcedimientos almacenados, … SI!!!
… ¡entiende cómo funciona la tecnología para usarla eficientemente!