Curso de SQL Server, Transact-SQL. Se estudian las diferentes instrucciones del lenguaje SQL:
- DDL (create, alter, drop) de diferentes tipos de objetos
- DML (select, insert, update, delete)
- DCL (grant, revoke) seguridad
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Curso de SQL Server: implementacion (T-SQL)
1. SQL Server 2005
Salvador Ramos
www.helpdna.net
webmaster@helpdna.net
2. Agenda
Visión general del producto
Administración
Implementación (T-SQL)
3. Agenda (implementación)
Introducción
Elementos de Transact SQL
– DDL, DCL y DML
– Procedimientos almacenados (SP)
– Funciones definidas por el usuario (UDF)
– Triggers (desencadenadores)
4. Introducción Transact SQL
Cumple ANSI SQL
Extensiones del lenguaje para ampliar
su funcionalidad
– Elementos de control de flujo (while, if…)
– Variables, Operadores y Funciones
Ventajas / Desventajas de cumplir
ANSI al escribir código
5. DDL
CREATE TABLE
ALTER INDEX
DROP PROCEDURE
VIEW
FUNCTION
LOGIN
USER
…
7. T-SQL (DDL y DCL)
Ejercicios
– Vamos a generar la secuencia de
comandos de la base de datos de
ejemplo, y estudiar su sintaxis
Tablas, Contraints, Indices
Permisos
Usuarios
…
16. Vistas
CREATE VIEW NbVista AS SELECT …
Ventajas
– Evita el acceso a las tablas directamente
– Permiten particionar la información
vertical y horizontalmente
– Permiten acceder fácilmente a consultas
complejas
– Se pueden crear índices sobre vistas
17. Vistas
Ejemplos
– Los usuarios de Murcia sólo tienen acceso
a los clientes de murcia mediante una
vista, y ésta tiene un índice.
– Los empleados tienen acceso a los datos
de sus compañeros pero no al importe de
la nómina.
– Una consulta compleja se incluye en una
vista, y luego utilizamos
SELECT * FROM MiVista
18. Indices - beneficios
Mejoran el rendimiento en:
– Consultas que buscan por valores únicos,
o basadas en rangos reducidos.
– Filtrado de valores por claves externas,
para resolver operaciones JOIN
– Obtención de datos ordenados
– Evitan duplicados
19. Indices - optimización
Adicionalmente a aplicar nuestros
conocimientos, podemos utilizar una
nueva herramienta de rendimiento:
“Asistente para optimización del motor
de bases de datos”
20. Procedimientos
Almacenados
Mejoran la seguridad
Están precompilados
Mejoran el tráfico de red
Podemos programar su ejecución
Permiten parámetros INPUT/OUTPUT
Se pueden anidar (hasta 32 niveles)
21. Paginacion
Devolver sólo la información que el
usuario va visualizar
Demo
– Realización de procedimientos
almacenados que devuelvan datos con
paginación
– Realización de procedimientos
almacenados para insert/update/delete
22. Triggers
Se ejecuta cuando sobre la tabla se
produce la acción para la que se
definió (INSERT, UPDATE, DELETE)
No admite parámetros
Se pueden definir varios sobre una
misma tabla
Se pueden deshabilitar
Se pueden anidar
23. Triggers
Algunas de sus utilidades son:
– Mantener la integridad de dominio
– Mantener datos denormalizados
Tablas Inserted y Deleted
Tipos de triggers
– INTEAD OF (se activan en lugar de)
– AFTER (se activan después de)
24. Triggers
Ejemplos
– Ver los códigos de ejemplo míos
– Ver las siguientes URLs:
http://www.configuracionesintegrales.com/mi
guele/acumulados.asp?articulo=12
http://www.configuracionesintegrales.com/mi
guele/insteadof.asp?articulo=211
25. Funciones Definidas por
el usuario (UDF)
Ventajas:
– Podemos usar su resultado en una
instrucción SELECT
– Puede recibir parámetros, por tanto
podemos simular una vista con
parámetros.
Ej: SELECT * FROM MiFunc(x)
– Podemos crear cualquier función que no
venga predefinida.
Ej: funciones financieras o matemáticas
26. UDFs
IMPORTANTE:
– Desde ellas no se pueden modificar datos
de tablas, ni llamar a procedimientos
almacenados que lo hagan.
27. Tipos de UDFs
Funciones Escalares (único valor)
– Se pueden utilizar en:
Instrucciones SELECT, INSERT, UPDATE, DELETE
Como valor DEFAULT
En restricciones CHECK
En instrucciones IF o WHILE
En columnas calculadas
Funciones Tabulares (una tabla)
– Se pueden utilizar en:
Instrucciones SELECT, INSERT, UPDATE, DELETE
Funcion EXISTS
28. Ejercicios
Vamos a realizar una serie de
ejercicios con Vistas, Procedimientos
Almacenados, Triggers y UDFs
– Procedimientos almacenados para Insert,
update y delete, y select paginados
– Triggers (varios)
– UDFs escalares y tabulares (de los b.o.l.)
– Estudiar script de AdvetureWorks