Está en la página 1de 14

EL LENGUAJE SQL

INTRODUCCIN. INSTRUCCIONES DE DEFINICIN DE TABLAS E NDICES. INSTRUCCIONES DE INSERCIN, MODIFICACIN Y BORRADO. CONSULTAS: INSTRUCCIN SELECT. CREACIN Y UTILIZACIN DE VISTAS. DESENCADENADORES. FUNCIONES. PROCEDIMIENTOS.

INTRODUCCIN

EL LENGUAJE SQL

EL LENGUAJE SQL

INTRODUCCIN
SQL ES UN LENGUAJE COMPLETO: INCLUYE SENTENCIAS PARA: DDL Y DML: PERMITE DEFINIR ESQUEMAS, CONSULTAR, BORRAR, ACTUALIZAR... DEFINICIN DE VISTAS: PARA VER LA BD DE DISTINTAS FORMAS. SEGURIDAD: PERMISOS DE ACCESO DISTINTOS PARA CADA USUARIO. DEFINIR RESTRICCIONES DE INTEGRIDAD: INTEGRIDAD REFERENCIAL... ESPECIFICAR CONTROL DE TRANSACCIONES: PARA GRANDES EMPRESAS, RECUPERACIN DE ERRORES, ARCHIVOS HISTRICOS... PUEDE INCRUSTARSE EN LENGUAJES DE ALTO NIVEL (C, C++, PASCAL, COBOL...). PERMITE OPERACIONES MUY COMPLEJAS.
EL LENGUAJE SQL 3

INTRODUCCIN
ESQUEMA (SCHEMA): CONJUNTO DE ELEMENTOS (TABLAS, VISTAS, PERMISOS...) QUE PERTENECEN A LA MISMA BD. CADA ESQUEMA TIENE UN NOMBRE Y UN USUARIO PROPIETARIO DEL ESQUEMA: CREATE SCHEMA <Nombre> AUTHORIZATION <Usuario>; CATLOGO (CATALOG): CONJUNTO DE ESQUEMAS. TIENE UN ESQUEMA ESPECIAL LLAMADO INFORMATION_SCHEMA. PROVEE INFORMACIN SOBRE LOS DEMS ESQUEMAS, USUARIOS AUTORIZADOS, DEFINICIONES DE DOMINIO, RESTRICCIONES DE INTEGRIDAD REFERENCIAL (SLO ENTRE TABLAS DEL MISMO CATLOGO)....
EL LENGUAJE SQL 4

INTRODUCCIN
INSTRUCCIONES DE DEFINICIN DE DATOS:

INTRODUCCIN
TIPOS DE DATOS:

EL LENGUAJE SQL

EL LENGUAJE SQL

INTRODUCCIN
TIPOS DE DATOS:

INTRODUCCIN
TIPOS DE DATOS:

EL LENGUAJE SQL

EL LENGUAJE SQL

INTRODUCCIN
INSTRUCCIONES DE MANIPULACIN DE DATOS:

INTRODUCCIN
INSTRUCCIONES DATOS: DE IMPORTACIN Y EXPORTACIN DE

EL LENGUAJE SQL

EL LENGUAJE SQL

10

INSTRUCCIONES DE DEFINICIN DE TABLAS E NDICES

INSTRUCCIONES DE DEFINICIN DE TABLAS E NDICES


CREACIN DE UNA BD:

EL LENGUAJE SQL

11

EL LENGUAJE SQL

12

INSTRUCCIONES DE DEFINICIN DE TABLAS E NDICES


EJEMPLO DE CREACIN DE UNA BD:

INSTRUCCIONES DE DEFINICIN DE TABLAS E NDICES


INCORPORACIN DE UNA TABLA NUEVA EN UNA BD:

EL LENGUAJE SQL

13

EL LENGUAJE SQL

14

INSTRUCCIONES DE DEFINICIN DE TABLAS E NDICES


MODIFICACIN DEL DISEO DE UNA TABLA EXISTENTE:

INSTRUCCIONES DE DEFINICIN DE TABLAS E NDICES


CLUSULA CONSTRAINT SOBRE UN CAMPO: CREACIN O ELIMINACIN DE RESTRICCIONES: LAS RESTRICCIONES PRIMARY KEY Y UNIQUE GENERAN NDICES. FOREING KEY NO GENERA NDICE.

EL LENGUAJE SQL

15

EL LENGUAJE SQL

16

INSTRUCCIONES DE DEFINICIN DE TABLAS E NDICES


CLUSULA CONSTRAINT SOBRE UNA TABLA:

INSTRUCCIONES DE DEFINICIN DE TABLAS E NDICES


CREACIN DE UN NDICE NUEVO SOBRE UNA TABLA:

EL LENGUAJE SQL

17

EL LENGUAJE SQL

18

INSTRUCCIONES DE INSERCIN, MODIFICACIN Y BORRADO

INSTRUCCIONES DE INSERCIN, MODIFICACIN Y BORRADO


ELIMINACIN DE OBJETOS EXISTENTES EN LA BD:

EL LENGUAJE SQL

19

EL LENGUAJE SQL

20

INSTRUCCIONES DE INSERCIN, MODIFICACIN Y BORRADO


AADIR UNA FILA EN UNA TABLA:

INSTRUCCIONES DE INSERCIN, MODIFICACIN Y BORRADO


MODIFICACIN DE INFORMACIN EXISTENTE EN UNA O VARIAS FILAS DE UNA TABLA:

AADIR MS DE UNA FILA EN UNA TABLA:

EL LENGUAJE SQL

21

EL LENGUAJE SQL

22

INSTRUCCIONES DE INSERCIN, MODIFICACIN Y BORRADO


ELIMINACIN DE UNA O VARIAS FILAS DE UNA TABLA:

INSTRUCCIONES DE INSERCIN, MODIFICACIN Y BORRADO


EJEMPLOS DE INSERT, UPDATE Y DELETE: INSERTAR UNA NUEVA FILA EN LA TABLA PROVEEDORES:

EL LENGUAJE SQL

23

EL LENGUAJE SQL

24

INSTRUCCIONES DE INSERCIN, MODIFICACIN Y BORRADO


INCORPORAR EL E-MAIL DEL PROVEEDOR CDIGO P004 CON VALOR DE MAILTO: gil@unican.es:

CONSULTAS: INSTRUCCIN SELECT

BORRAR TODOS LOS PROVEEDORES DE LA LOCALIDAD SANTANDER:

EL LENGUAJE SQL

25

EL LENGUAJE SQL

26

CONSULTAS: INSTRUCCIN SELECT


SELECT EST DESTINADA A OBTENER INFORMACIN DE LA BD. EL RESULTADO DE SU EJECUCIN, SI EXISTE, SIEMPRE TIENE ESTRUCTURA DE TABLA: LOS CAMPOS DE SUS FILAS RESPONDEN A LA LISTA DE SELECCIN. TIENE ENORMES POSIBILIDADES: SU SINTAXIS PRESENTA MUCHAS VARIANTES.

CONSULTAS: INSTRUCCIN SELECT


DETALLES:

EL LENGUAJE SQL

27

EL LENGUAJE SQL

28

CONSULTAS: INSTRUCCIN SELECT


DISTINTOS TIPOS DE BSQUEDAS:

CONSULTAS: INSTRUCCIN SELECT


POTENCIALIDADES DE SELECT:

EL LENGUAJE SQL

29

EL LENGUAJE SQL

30

CONSULTAS: INSTRUCCIN SELECT


EJEMPLOS DE BSQUEDAS SENCILLAS: OBTENER EL CONTENIDO DE LA TABLA ARTICULOS:

CONSULTAS: INSTRUCCIN SELECT


BSQUEDAS CUALIFICADAS: CONDICIN DE COMPARACIN 1: LAS CONDICIONES DE COMPARACIN: SON EXPRESIONES LGICAS. PERMITEN COMPARAR UNA COLUMNA O EXPRESIN CON OTRA COLUMNA, EXPRESIN O LISTA DE COLUMNAS. LOS FORMATOS POSIBLES SON:

LISTAR EL NOMBRE Y EL TELFONO DE TODOS LOS PROVEEDORES:

EJ.: ENCONTRAR LOS ARTCULOS CUYO PRECIO UNITARIO SEA SUPERIOR A 180 Y SU STOCK SEA INFERIOR O IGUAL A 100:
EL LENGUAJE SQL 31 EL LENGUAJE SQL 32

CONSULTAS: INSTRUCCIN SELECT


BSQUEDAS CUALIFICADAS: CONDICIN DE COMPARACIN 2: EJ.: LISTAR LOS ARTCULOS CUYO PRECIO UNITARIO EST COMPRENDIDO ENTRE 180 Y 300:

CONSULTAS: INSTRUCCIN SELECT


BSQUEDAS CUALIFICADAS: CONDICIN DE COMPARACIN 3: EJ.: ENCONTRAR TODOS LOS PROVEEDORES CUYO PRIMER APELLIDO COMIENCE POR UNA LETRA COMPRENDIDA ENTRE LA A Y LA J:

EJ.: HALLAR TODOS LOS PROVEEDORES DE LAS CIUDADES DE SANTANDER, MADRID Y BARCELONA:

EJ.: HALLAR TODOS LOS PROVEEDORES DE LOS QUE NO SE TENGA INFORMACIN ACERCA DE SU CORREO ELECTRNICO:

EL LENGUAJE SQL

33

EL LENGUAJE SQL

34

CONSULTAS: INSTRUCCIN SELECT


BSQUEDAS CUALIFICADAS: CONDICIONES DE COMBINACIN: COMBINACIN SIMPLE: UNA COMBINACIN SIMPLE ES AQUELLA EN LA QUE LA CONDICIN DE LA CLUSULA FROM (O WHERE) CONTIENE UNA COMPARACIN DE IGUALDAD ENTRE CAMPOS PERTENECIENTES A DOS TABLAS DISTINTAS: EJ.: HALLAR TODOS LOS PROVEEDORES A LOS QUE SE HA EFECTUADO ALGN PEDIDO ENTRE EL 20/01/2002 Y EL 15/09/2002:

CONSULTAS: INSTRUCCIN SELECT


BSQUEDAS CUALIFICADAS: CONDICIONES DE COMBINACIN: COMBINACIN MLTIPLE: UNA COMBINACIN MLTIPLE RELACIONA VARIOS CAMPOS DE MS DE DOS TABLAS. EJ.: ENCONTRAR TODOS LOS ARTCULOS QUE HAN SIDO PEDIDOS ENTRE EL 15/05/2002 Y EL 30/05/2002.

EL LENGUAJE SQL

35

EL LENGUAJE SQL

36

CONSULTAS: INSTRUCCIN SELECT


BSQUEDAS CUALIFICADAS: CONDICIONES DE COMBINACIN: AUTOCOMBINACIN: UNA AUTOCOMBINACIN ES UNA COMBINACIN DE UNA TABLA CON ELLA MISMA. EJ.: ENCONTRAR TODOS LOS PEDIDOS QUE TIENEN VARIAS LNEAS DEL MISMO ARTCULO:

CONSULTAS: INSTRUCCIN SELECT


BSQUEDAS CUALIFICADAS: CONDICIONES DE COMBINACIN: COMBINACIN EXTERNA: SE DA PREFERENCIA A UNA TABLA RESPECTO DE OTRA: LAS FILAS DE LA TABLA DOMINANTE SERN SELECCIONADAS AUNQUE LA CONDICIN DE ENLACE NO SE HAYA VERIFICADO. EJ.: LISTAR TODOS LOS PROVEEDORES INDICANDO LOS QUE HAN RECIBIDO ALGN PEDIDO:

EL LENGUAJE SQL

37

EL LENGUAJE SQL

38

CONSULTAS: INSTRUCCIN SELECT


BSQUEDAS CUALIFICADAS: CONDICIONES DE SUBSENTENCIAS: PERMITE CONTRASTAR UNA EXPRESIN O UN CAMPO CON EL RESULTADO DE OTRA INSTRUCCIN (SUBSENTENCIA) SELECT. LAS DOS INSTRUCCIONES SE DENOMINAN INSTRUCCIONES IMBRICADAS. LA SUBSENTENCIA PUEDE INCLUIR EN SU CONDICIN A OTRA SUBSENTENCIA Y AS SUCESIVAMENTE. LOS FORMATOS POSIBLES SON LOS SIGUIENTES:

CONSULTAS: INSTRUCCIN SELECT


EJ.: ENCONTRAR LOS ARTCULOS CUYO STOCK ES MAYOR QUE TODA CANTIDAD PEDIDA DEL MISMO ARTCULO:

EL LENGUAJE SQL

39

EL LENGUAJE SQL

40

CONSULTAS: INSTRUCCIN SELECT


EJ. CON PREDICADO IN: ENCONTRAR LOS ARTCULOS QUE NO HAN SIDO PEDIDOS ENTRE EL 24/09/2002 Y EL 21/11/2002:

CONSULTAS: INSTRUCCIN SELECT


FUNCIONES DE GRUPO: CON LAS FILAS DE LA INFORMACIN DE PROCESO CORRESPONDIENTE A UNA INSTRUCCIN SELECT SE PUEDEN OBTENER GRUPOS. SE PUEDEN EFECTUAR CIERTOS CLCULOS EN ESTOS GRUPOS CON LAS FUNCIONES DE GRUPO:

EJ. CON PREDICADO EXIST: ENCONTRAR LOS PROVEEDORES DE MADRID A LOS QUE SE LES HA REALIZADO ALGN PEDIDO ENTRE EL 24/09/2002 Y EL 21/11/2002:

EL LENGUAJE SQL

41

EL LENGUAJE SQL

42

CONSULTAS: INSTRUCCIN SELECT


EJ.: ENCONTRAR CUNTOS ARTCULOS HAY REGISTRADOS, EL MXIMO Y EL MNIMO PRECIO UNITARIO, EL PRECIO UNITARIO MEDIO Y LA VALORACIN DEL ALMACN:

CONSULTAS: INSTRUCCIN SELECT


FUNCIONES DE FECHA: LOS DATOS DE TIPO FECHA SE ALMACENAN COMO UNA UNIDAD DE INFORMACIN. LAS FUNCIONES DE FECHA PERMITEN TRABAJAR CON COMPONENTES DE UNA FECHA.

EL LENGUAJE SQL

43

EL LENGUAJE SQL

44

CONSULTAS: INSTRUCCIN SELECT


EJ.: LISTAR DA, MES Y AO DE CADA PEDIDO Y EL DA DE LA SEMANA AL QUE CORRESPONDEN SUS FECHAS.: 1=LUNES, 2=MARTES, ..

CONSULTAS: INSTRUCCIN SELECT


AGRUPAMIENTO DE DATOS: LA CLUSULA GROUP PERMITE FORMAR GRUPOS CON LAS FILAS DE DATOS QUE TENGAN VALORES IGUALES PARA DETERMINADOS CAMPOS. EJ.: OBTENET EL IMPORTE DE CADA PEDIDO SIN APLICAR EL IVA:

EL LENGUAJE SQL

45

EL LENGUAJE SQL

46

CONSULTAS: INSTRUCCIN SELECT


AGRUPAMIENTO DE DATOS: CONDICIN DE AGRUPAMIENTO: EJ.: OBTENET EL IMPORTE DE LOS PEDIDO QUE TIENEN MS DE UNA LNEA, SIN APLICAR EL IVA:

CONSULTAS: INSTRUCCIN SELECT


ORDENACIN DE RESULTADOS:

EJ.: LISTAR LOS VALORES DE LOS CAMPOS QUE COMPONEN EL NDICE DE UNICIDAD DE LA TABLA LINEAS (NUMPED, NUMLIN) POR ORDEN DECRECIENTE DE N DE PEDIDO Y DE N DE LNEA:

EL LENGUAJE SQL

47

EL LENGUAJE SQL

48

CONSULTAS: INSTRUCCIN SELECT


GUARDAR RESULTADOS EN UNA TABLA:

CONSULTAS: INSTRUCCIN SELECT


UNIN DE SENTENCIAS: PERMITE COMBINAR LOS RESULTADOS DE DOS O MS CONSULTAS. SE UTILIZA EL OPERADOR UNION. EJ.: LISTAR TODOS LOS PROVEEDORES DE LAS TABLAS PROVEEDORES Y PROVEEDORES_ANULADOS ORDENADOS POR SU CDIGO:

EJ.: CREAR LA TABLA TEMPORAL T1 PARA GUARDAR EL IMPORTE, SIN APLICAR EL IVA, DE LOS PEDIDOS QUE TIENEN MS DE UNA LNEA:

EL LENGUAJE SQL

49

EL LENGUAJE SQL

50

CONSULTAS: INSTRUCCIN SELECT


USO DE FUNCIONES: EJ.: OBTENER EL PRECIO Y LA DESCRIPCIN DE LOS ARTCULOS CON LA FUNCIN dame_precio_articulos(@codigo_art):

CREACIN VISTAS

UTILIZACIN

DE

EJ.: CON LA MISMA FUNCIN, OBTENER LOS ARTCULOS CUYO PRECIO SEA MAYOR QUE 190:

EL LENGUAJE SQL

51

EL LENGUAJE SQL

52

CREACIN VISTAS

UTILIZACIN

DE

CREACIN VISTAS
EJEMPLO:

UTILIZACIN

DE

CREACIN DE UNA VISTA EN LA BD:

EL LENGUAJE SQL

53

EL LENGUAJE SQL

54

DESENCADENADORES, PROCEDIMIENTOS Y FUNCIONES

DESENCADENADORES, PROCEDIMIENTOS Y FUNCIONES


APLICACIONES: IMPLEMENTACIN DE REGLAS DE INTEGRIDAD COMPLEJAS. GESTIN DE LOG (CONTROL DE CAMBIOS). FLUJOS DE TRABAJO O PROCESO. VENTAJAS: SEMNTICA DEL PROBLEMA EN UN SOLO SITIO INTEGRIDAD. FACILITAN LA CONSTRUCCIN DE APLICACIONES PROCEDIMIENTOS Y FUNCIONES ALMACENADOS: LGICA DE NEGOCIO COMPARTIDA POR APLICACIONES. REUTILIZACIN DE CDIGO. SEGURIDAD DE ACCESO A LOS USUARIOS. REDUCCIN DEL TRFICO DE RED. MANTENIMIENTO MS SENCILLO.

EL LENGUAJE SQL

55

EL LENGUAJE SQL

56

DESENCADENADORES, PROCEDIMIENTOS Y FUNCIONES


INCONVENIENTES: DEBEN ESCRIBIRSE CON CUIDADO CUIDAR LA EJECUCIN INFINITA DE DISPAROS. CONTROL COMPLEJO DE CONDICIONES. MAYOR CARGA COMPUTACIONAL DEL SERVIDOR.

DESENCADENADORES

EL LENGUAJE SQL

57

EL LENGUAJE SQL

58

DESENCADENADORES
CREACIN DE UN DESENCADENADOR (TRIGGER) EN UNA TABLA DE UNA BD:

DESENCADENADORES
EJEMPLO DE TRIGGER:

EL LENGUAJE SQL

59

EL LENGUAJE SQL

60

DESENCADENADORES

DESENCADENADORES
EJEMPLO DE TRIGGER CON CURSORES:

EL LENGUAJE SQL

61

EL LENGUAJE SQL

62

DESENCADENADORES
DISPARADORES EN SQL 2003:

DESENCADENADORES
DISPARADORES EN SQL 2003:

EL LENGUAJE SQL

63

EL LENGUAJE SQL

64

DESENCADENADORES
DISPARADORES EN SQL 2003:

DESENCADENADORES

EL LENGUAJE SQL

65

EL LENGUAJE SQL

66

DESENCADENADORES

DESENCADENADORES

EL LENGUAJE SQL

67

EL LENGUAJE SQL

68

FUNCIONES

FUNCIONES
CREACIN DE UNA FUNCIN ESCALAR EN LA BD:

EL LENGUAJE SQL

69

EL LENGUAJE SQL

70

FUNCIONES
CREACIN DE UNA FUNCIN QUE DEVUELVE UNA TABLA:

FUNCIONES
EJEMPLO DE CREACIN DE UNA FUNCIN:

EL LENGUAJE SQL

71

EL LENGUAJE SQL

72

FUNCIONES
EJEMPLO DE CREACIN DE UNA FUNCIN:

FUNCIONES
CREACIN DE REGLA PARA SER UTILIZADA EN UN TIPO DE DATO DEFINIDO POR EL USUARIO EN LA BD:

EL LENGUAJE SQL

73

EL LENGUAJE SQL

74

FUNCIONES
CREACIN DE UN VALOR POR DEFECTO UTILIZABLE EN UN TIPO DE DATO DEFINIDO POR EL USUARIO EN LA BD:

FUNCIONES

EL LENGUAJE SQL

75

EL LENGUAJE SQL

76

FUNCIONES

PROCEDIMIENTOS

EL LENGUAJE SQL

77

EL LENGUAJE SQL

78

PROCEDIMIENTOS
CREACIN DE UN PROCEDIMIENTO EN LA BD:

PROCEDIMIENTOS
EJEMPLO DE CREACIN DE PROCEDIMIENTO:

EL LENGUAJE SQL

79

EL LENGUAJE SQL

80

PROCEDIMIENTOS

EL LENGUAJE SQL

81

También podría gustarte