Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Prev 1297041235
Prev 1297041235
PREFACIO
Este libro, refunde gran parte del material utilizado durante aos, e impartido en
diversas academias de formacin y empresas privadas, sirviendo de referencia y
ayuda a quien quiera iniciar un aprendizaje en el lenguaje SQL, o mejorar el nivel de
conocimientos sobre el mismo.
La informacin que encontrar en este curso, se encuentra actualizada hasta la
versin 10g Rel 2., de la base de datos de Oracle.
Pensando en un amplio sector de la poblacin que no puede acudir de forma
presencial a la distinta oferta formativa que se ofrece para este lenguaje, este
documento aporta cmodamente un curso planificado, con un pautado ritmo de
aprendizaje y que siempre servir como gua de referencia para posteriores consultas.
Antoln Muoz Chaparro.
NDICE
CAPITULO 1 .................................................................................... 9
Conceptos de Base de Datos Relacionales ................................................ 9
Qu es una Base de Datos?................................................................................................ 9
Qu significa Base de Datos Relacional?.......................................................................... 10
Introduccin al Modelo Relacional ....................................................................................... 10
Relacin entre elementos de Base de Datos y elementos del Modelo Relacional ............. 12
Composicin de un ndice.................................................................................................... 12
Creacin de un diagrama relacional .................................................................................... 13
Reglas para la creacin de claves ajenas ........................................................................... 15
Operaciones de consulta ..................................................................................................... 16
Operacin de Seleccin ....................................................................................................... 16
Operacin de Proyeccin..................................................................................................... 16
Operacin de Unin ............................................................................................................. 17
Operacin de Interseccin ................................................................................................... 17
Operacin de Diferencia ...................................................................................................... 17
Operacin de Producto Cartesiano...................................................................................... 18
Operacin de Join ................................................................................................................ 18
CAPITULO 2 .................................................................................. 21
Introduccin al lenguaje SQL..................................................................... 21
Introduccin.......................................................................................................................... 21
Historia de SQL.................................................................................................................... 21
SQL Standard ...................................................................................................................... 22
Beneficios de SQL ............................................................................................................... 25
Estructura del lenguaje SQL ................................................................................................ 25
Sublenguaje DDL ................................................................................................................. 26
Sublenguaje DML................................................................................................................. 26
Sublenguaje de Control de Transacciones .......................................................................... 26
Sublenguaje de Control de Sesin ...................................................................................... 26
Sublenguaje de Control del Sistema.................................................................................... 27
Convenciones lxicas .......................................................................................................... 27
CAPITULO 3 .................................................................................. 29
Elementos de SQL....................................................................................... 29
Introduccin.......................................................................................................................... 29
Literales o valores constantes.............................................................................................. 29
Textos................................................................................................................................... 29
Enteros ................................................................................................................................. 31
Nmeros............................................................................................................................... 31
Tipos de datos...................................................................................................................... 32
Tratamiento de valores nulos............................................................................................... 33
Pseudocolumnas.................................................................................................................. 34
Comentarios ......................................................................................................................... 36
Objetos de la base de datos ................................................................................................ 36
Nombres de objeto y calificadores....................................................................................... 37
Referenciando a esquemas de objetos ............................................................................... 39
Referenciando a bases de datos remotas ........................................................................... 39
CAPITULO 4 .................................................................................. 43
Tipos de datos en profundidad. ................................................................. 43
Tipos numricos................................................................................................................... 43
Tipos de carcter ................................................................................................................. 44
Tipos de datos de fecha....................................................................................................... 45
Tipos ROWID ....................................................................................................................... 46
Tipos Booleanos .................................................................................................................. 47
Tipos LOB ............................................................................................................................ 47
Tipos compuestos ................................................................................................................ 47
Material del curso actualizado hasta la versin de Oracle 10g Rel 2.
Contenidos del curso elaborados por: Antoln Muoz Chaparro.
CAPITULO 5 .................................................................................. 49
Gestin de usuarios. ................................................................................... 49
Gestin de usuarios ............................................................................................................. 49
Modos de conectarse a la base de datos con cualquier usuario......................................... 49
Privilegios asociados a los modos de conexin a la base de datos .................................... 50
Como se arranca y se para una base de datos mediante comandos ................................. 50
Creacin de un usuario ........................................................................................................ 52
Gestin de roles o papeles de usuario ................................................................................ 52
Gestin de privilegios sobre objetos de la Base de Datos .................................................. 54
Anulacin de privilegios y roles............................................................................................ 56
Borrar un usuario ................................................................................................................. 56
Usuario PUBLIC................................................................................................................... 56
CAPITULO 6 .................................................................................. 59
El lenguaje DDL. .......................................................................................... 59
Introduccin.......................................................................................................................... 59
Creacin de una tabla (CREATE TABLE) ........................................................................... 59
Integridad Referencial .......................................................................................................... 68
Alteracin del contenido de una tabla. (ALTER TABLE) ..................................................... 71
Borrado de una tabla. (DROP TABLE). ............................................................................... 83
Manejo de ndices ................................................................................................................ 85
Manejo de vistas .................................................................................................................. 89
Creacin de secuencias....................................................................................................... 93
Cmo se maneja la secuencia ............................................................................................. 94
CAPITULO 7 .................................................................................. 97
El lenguaje DML (Introduccin).................................................................. 97
Introduccin.......................................................................................................................... 97
CAPITULO 8 .................................................................................. 99
El lenguaje DML (Insercin de datos)........................................................ 99
Introduccin.......................................................................................................................... 99
Insercin de datos (INSERT) ............................................................................................... 99
CAPITULO 1
Una base de datos Relacional, es aquella que se fundamenta o utiliza las teoras
del modelo relacional de Codd.
El Modelo Relacional fue enunciado por Codd a finales de los aos 60.
10
11
Base de datos
Tablas
Columnas
Filas
Restricciones
Restricciones e ndices.
Una Restriccin es aquella limitacin que se impone a los valores que pueda
llegar a tomar una columna de una tabla. As mismo, se pueden imponer
restricciones a nivel de toda la tabla, usando claves.
Un ndice es una estructura de acceso rpido que utiliza el SGBD para localizar
ms rpido la informacin fsica contenida en la base de datos.
Composicin de un ndice
Un ndice se crea para poder acceder a la informacin fsica de manera ms rpida
por parte del SGBD.
Clave
3509
3510
3511
Fichero.
Posicion
00199AAA
00198FFF
31233FFF
Informacin
Pepe
Juan
Jose
Tabla.
Clave
3509
3510
3511
Nombre
Pepe
Juan
Jose
12
13
Ultima fase: Identificar las claves ajenas o relaciones entre los atributos de las
distintas entidades.
14
Que el/los atributos de la entidad a la que llegue la relacin sean clave primaria o
clave nica.
15
La relacin con la entidad a la que llega la relacin debe de ser completa (con
todos los atributos que forman la clave primaria de la misma).
Operaciones de consulta
En el Modelo Relacional de Codd se definen las siguientes operaciones de consulta
sobre entidades:
Seleccin
Proyeccin
Unin
Interseccin
Diferencia
Producto cartesiano
Join
Operacin de Seleccin
Esta operacin de consulta, obtiene un conjunto de tuplas de una sola entidad con o
sin condiciones.
Operacin de Proyeccin
Esta operacin de consulta, permite obtener valores de uno o varios atributos de una
sola entidad.
16
Operacin de Unin
Para poder realizar una operacin de consulta de unin entre entidades, tiene que
coincidir el nmero de atributos de ambas, y el tipo.
El resultado de esta operacin, es la suma de tuplas de ambas entidades para los
atributos que se unen.
Operacin de Interseccin
Para realizar una operacin de consulta con interseccin entre entidades, tiene que
coincidir el nmero de atributos de ambas, y el tipo.
El resultado de esta operacin, es la aparicin nicamente de las tuplas con el mismo
contenido en ambas entidades.
Operacin de Diferencia
Para realizar una operacin de consulta con diferencia entre entidades, tiene que
coincidir el nmero de atributos de ambas, y el tipo.
El resultado de esta operacin, es la aparicin de aquellas tuplas de la primera entidad
que no coincidan con las tuplas de la segunda.
17
Operacin de Join
La operacin de consulta Join, permite unir tuplas de dos entidades a travs de algn
atributo en comn.
El resultado de esta operacin, es la suma de los atributos que se quieran mostrar.
18
o Telfono.
o Cdigo postal.
o Cdigo de curso.
o Cdigo de centro.
o N de la Seguridad Social.
El cdigo del curso puede repetirse en centros distintos, por lo que no es unvoco.
Un curso de un centro, slo puede ser impartido por un profesor.
Por ltimo, a estos cursos, asisten una serie de alumnos con los siguientes
atributos:
o Dni.
o Nombre.
o Apellidos.
o Direccin.
o Telfono.
o Cdigo postal.
o Codigo curso.
o Cdigo centro.
o Fecha de comienzo del curso.
o Fecha de fin del curso.
Un alumno en un mismo centro, puede asistir a varios curso, pero al mismo curso
slo podr asistir en fechas de comienzo distintas.
19
20