bd 2 1 fundamentos transact sql
Post on 11-Jul-2015
846 Views
Preview:
TRANSCRIPT
UNIVERSIDAD ANTONIO UNIVERSIDAD ANTONIO JOSE CAMACHOJOSE CAMACHO
CURSO BASES DE DATOS IICURSO BASES DE DATOS II
TEMA 1: FUNDAMENTOS DE TEMA 1: FUNDAMENTOS DE TRANSACT SQLTRANSACT SQL
CARLOS GUSTAVO LOPEZCARLOS GUSTAVO LOPEZ
SEPTIEMBRE DE 2011SEPTIEMBRE DE 2011
CONTENIDOCONTENIDO PRESENTACION DEL CURSO DEFINICIONES INTRODUCCION A SQL SERVER REPASO DML Y DDL FUNCIONES CONTROL DE FLUJO STORED PROCEDURES STORED PROCEDURES EXTENDIDOS TRIGGERS CURSORES
PRESENTACION DEL CURSOPRESENTACION DEL CURSO
PLAN DE ESTUDIO METODOLOGIA DISTRIBUCION DE NOTAS
DEFINICIONESDEFINICIONES
SQL: Lenguaje estructurado de consultas (structured query language).
Lenguaje de acceso a BD relacionales. Manejo de álgebra y cálculo relacional que
permite definir (DDL) realizar consultas para recuperar y modificar la información de una BD (DML).
DEFINICIONESDEFINICIONES
Transact SQL: extensión al SQL de Microsoft que permite:
Incluir información procedimental Variables locales Funciones
DEFINICIONESDEFINICIONESAlgo de historia 1970: E. F. Codd propone el modelo relacional y
sublenguaje de acceso a los datos. IBM define el lenguaje SEQUEL (Structured
English QUEry Language) con base en las ideas de Codd.
1979: Oracle introduce por primera vez SEQUEL en un lenguaje comercial.
SQL: versión evolucionada de SEQUEL 1986: Estandarización de SQL: ANSI SQL 1992: Nuevo estándar ampliado y revisado: SQL-
92 o SQL2
INTRODUCCION A SQL SERVERINTRODUCCION A SQL SERVER
SQL Server: sistema para la gestión de BD (DBMS) producido por Microsoft basado en el modelo relacional.
Sus lenguajes de consulta son TransactSQL y ANSI SQL.
http://msdn.microsoft.com/es-es/library/bb934498.aspx
INTRODUCCION A SQL SERVERINTRODUCCION A SQL SERVER
Características: Soporte de transacciones Escalabilidad, estabilidad y seguridad
(integración con PowerShell que remueve la consola para configurar la seguridad, cifrado , auditoría, compresión de datos, corrector de sintaxis
INTRODUCCION A SQL SERVERINTRODUCCION A SQL SERVER
Características: Soporta procedimientos almacenados Entorno gráfico de administración que
permite uso de comandos DDL y DML Permite trabajar en modo cliente-
servidor
INTRODUCCION A SQL SERVERINTRODUCCION A SQL SERVER
PRACTICA EN CLASEInstalación BD de AdventureWorks.
REPASO DML Y DDLREPASO DML Y DDL
DDL: CREATE / DROP TABLE ALTER TABLE◦ PRIMARY KEY◦ FOREIGN KEY◦ UNIQUE◦ CHECK◦ NULL / NOT NULL
REPASO DML Y DDLREPASO DML Y DDL
DML:SELECT ….FROM ….WHERE ….GROUP BY ….HAVING ….ORDER BY ….
REPASO DML Y DDLREPASO DML Y DDLDML:SELECT ….FROM ….[INNER JOIN | LEFT JOIN | RIGHT JOIN |
FULL OUTER JOIN] …. ON …WHEREGROUP BYHAVINGORDER BY
REPASO DML Y DDLREPASO DML Y DDL
DML: INSERT UPDATE DELETE
REPASO DML Y DDLREPASO DML Y DDL
DML: UNION INTERSECT EXCEPT
REPASO DML Y DDLREPASO DML Y DDL
DML: DISTINCT IN BETWEEN CASE EXISTS
REPASO DML Y DDLREPASO DML Y DDL
DML: LIKE◦ LIKE ‘A%’◦ LIKE ‘_ABC’◦ LIKE ‘[AF]%’: todo lo que empiece por A o F◦ LIKE ‘[!A-F]%’ todo lo que no empiece por
cualquier letra entre A y F
REPASO DML Y DDLREPASO DML Y DDL
DML: SUM COUNT AVG MAX MIN
REPASO DML Y DDLREPASO DML Y DDLDML: COMPUTE: calculo de consolidados o
totales sobre campos numéricos de la consulta.
SELECT MARITALSTATUS, COUNT(1)FROM HUMANRESOURCES.EMPLOYEEGROUP BY MARITALSTATUSCOMPUTE SUM(COUNT(1));
REPASO DML Y DDLREPASO DML Y DDL
Operadores lógicos: AND OR NOT
REPASO DML Y DDLREPASO DML Y DDL
Predicados de consultas: ALL: devuelve todos los campos de la
tabla TOP: devuelve la cantidad indicada de
registros DISTINCT: omite registros repetidos con
base en los campos seleccionados
REPASO DML Y DDLREPASO DML Y DDL
VISTAS: Una vista es una consulta que refleja el contenido de una o más tablas, desde la que se puede acceder a los datos como si fuera una tabla.
CREATE VIEW <nombre_vista>AS (<sentencia_select>);
ALTER VIEW <nombre_vista>AS (<sentencia_select>);
REPASO DML Y DDLREPASO DML Y DDL
SINONIMOS: Un sinónimo es un nombre alternativo que identifica una tabla en la BD.
CREATE SYNONYM<nombre_sinonimo>FOR <nombre_tabla>;
FUNCIONESFUNCIONES Sintaxis:◦ Select nombre_funcion(argumentos)◦ Select user_name◦ Ver pág 375: funciones del sistema◦ Ver pág 380: funciones con cadenas◦ Ver pág 394: funciones matemáticas◦ Ver pág 397: funciones con fechas◦ Ver pág 412: funciones de seguridad
Las funciones pueden emplearse en el SELECT o en el WHERE
FUNCIONESFUNCIONES Ejercicios de funciones del sistema:◦ db_name◦ host_name◦ isnull◦ user_name
Ejercicios de funciones con cadenas◦ Char◦ Char_length◦ Charindex◦ patindex◦ Lower, upper◦ Ltrim, rtrim◦ Substr◦ stuff
FUNCIONESFUNCIONES Ejercicios de funciones matemáticas:◦ Abs◦ Ceiling◦ Floor◦ Rand◦ Round
Ejercicios de funciones con fechas:◦ getdate◦ datename◦ datepart◦ Datediff◦ dateadd
TAREATAREA1. Instalar en el PC propio SQL Server 2008 y SQL Server
Management Studio.2. Repasar del Transact-SQL User’s Guide los capítulos del 1 al 113. Hacer las siguientes consultas de la base de datos de
AdventureWorks, explicando para cada una la solución planteada1. Obtenga de Person.CountryRegion los países cuya primera letra del
código sea la ‘C’ y la segunda se encuentre entre la ‘L’ y la ‘O’. 2. Obtenga de Person.Address la AddressLine1 concatenada con
AddressLine2, City y StateProvinceID, en mayúscula, de todas las direcciones de la ciudad ‘Melbourne’. Nota: tenga el cuenta que varias AddressLine2 vienen nulas.
3. Obtenga de Person.Contact el FirstName concatenado con el MiddleName y el LastName, y en otra columna las iniciales. Por ejemplo: ‘Gustavo Achong’, ‘GA’
4. Obtenga de Person.Contact el FirstName, MiddleName, LastName y el EmailAddress hasta antes de la ‘@’
top related