PDF de programación - manual de sql

Imágen de pdf manual de sql

manual de sqlgráfica de visualizaciones

Publicado el 5 de Julio del 2017
1.311 visualizaciones desde el 5 de Julio del 2017
327,0 KB
79 paginas
Creado hace 16a (09/01/2008)
ÍNDICE

SQL

Índice

1. Introducción

2. Tipos de Datos

2.1. Datos numéricos

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.1. Oracle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.2. SQL2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2. Tipos de datos de cadenas de caracteres . . . . . . . . . . . . . . . . . . . . .
2.2.1. Oracle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.2. SQL2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3. Tipos de datos temporales (fechas, horas) . . . . . . . . . . . . . . . . . . . .
2.3.1. Oracle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.2. SQL2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.4. Valores nulos

3. Tablas de referencia

4. Expresiones

5. SQL como DML (Lenguaje de Manipulación de Datos)

5.1. El select básico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1.1. Obtención del resultado de la sentencia Select . . . . . . . . . . . . .
5.1.2. Orden de presentación de las filas del resultado . . . . . . . . . . . . .
5.1.3. Asignación de nombres a las columnas del resultado . . . . . . . . . .
5.1.4. Eliminación de filas repetidas . . . . . . . . . . . . . . . . . . . . . . .
5.2. La condición del WHERE . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.1. Sentencias Select subordinadas
. . . . . . . . . . . . . . . . . . . . .
5.2.2. Predicados simples . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.3. Predicado NULL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.4. Predicados cuantificados . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.5. Predicado Between . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.6. Predicado Like . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.7. Predicado IN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.8. Predicado Exists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.9. Predicados compuestos . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3. Funciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4. Funciones escalares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4.1. Funciones para descartar nulos . . . . . . . . . . . . . . . . . . . . . .

Laboratorio de Bases de Datos

1

1
2
2
2
2
2
3
3
3
4
4

5

6

7
7
8
9
11
12
13
13
13
14
15
17
18
20
22
23
24
25
25

i

Laboratorio de Bases de Datos

5.4.2. Función DECODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4.3. Función LENGTH . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4.4. Funciones para el tratamiento de strings . . . . . . . . . . . . . . . . .
5.4.5. Funciones aritméticas y trigonométicas . . . . . . . . . . . . . . . . . .
5.4.6. Funciones para datos de tipo fecha . . . . . . . . . . . . . . . . . . . .
5.5. Funciones colectivas o de columna . . . . . . . . . . . . . . . . . . . . . . . .
5.5.1. Formato con una expresión en el argumento . . . . . . . . . . . . . . .
5.5.2. Formato con un asterisco . . . . . . . . . . . . . . . . . . . . . . . . .
5.6. Agrupamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.7. Cláusula HAVING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.8. Orden de ejecución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.9. Consultas sobre varias tablas
. . . . . . . . . . . . . . . . . . . . . . . . . . .
5.9.1. Calificación de los nombres de columnas . . . . . . . . . . . . . . . . .
5.9.2. Cláusula FROM con varias tablas
. . . . . . . . . . . . . . . . . . . .
5.9.3. JOIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.10. Consultas correlacionadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.11. Composición de consultas . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.12. Expresiones de tabla anidada . . . . . . . . . . . . . . . . . . . . . . . . . . .

6. Continuación del SQL como DML (Lenguaje de Manipulación de Datos)
6.1.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2. Borrado de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3. Modificación de Datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Inserción de datos

7. SQL como DDL (Lenguaje de Definición de Datos)

7.3.1. Alteración de atributos

7.1. Creación de tablas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.1.1. Definición de atributos . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.1.2. Definición de restricciones . . . . . . . . . . . . . . . . . . . . . . . . .
7.2. Borrado de Tablas
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.3. Modifición (Alteración) de Tablas . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
7.4. Creación de índices con SQL . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.5. Vistas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.5.1. Creación de Vistas . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.5.2. Borrado de vistas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.5.3. Ventajas del uso de vistas . . . . . . . . . . . . . . . . . . . . . . . . .
7.5.4. Consultas sobre vistas . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.5.5. Actualización de vistas . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.5.6. With check option . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.6. Seguridad y permisos (en Oracle) . . . . . . . . . . . . . . . . . . . . . . . . .
7.6.1. Los conceptos de “Role” y “PUBLIC” . . . . . . . . . . . . . . . . . .
7.6.2. Gestión de permisos . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.6.3. Permisos globales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.7. Transacciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8. El catálogo

ii

26
27
28
29
29
30
31
32
33
36
37
38
38
38
39
44
47
48

49
49
50
51

51
51
52
53
55
55
56
58
59
59
61
61
62
62
68
68
68
69
69
71

75

El select de SQL

1.

Introducción

Prácticamente la totalidad de los SGBD relacionales utilizan para realizar consultas y
solicitudes de modificación de los datos y/o estructuras de datos un lenguaje denominado
SQL (Structured Query Language = Lenguaje de Consulta Estructurado). El SQL incluye
algunas características del álgebra relacional, aunque en realidad está basado en gran parte
en el cálculo relacional orientado a tuplas, pero con una sintaxis más amigable que esos
lenguajes.

Originalmente, SQL se llamaba SEQUEL (Structured English QUEry Language) y
fue diseñado e implementado por IBM Research como interfaz para el SGBD relacional
experimental SYSTEM R. Un esfuerzo conjunto de ANSI (American National Standards
Institute) e ISO (International Standards Organization) ha dado lugar a una versión estándar
de SQL [Ame86] llamada SQL-86 o SQL1. Posteriormente, se desarrollaron dos versiones
revisadas y más expandidas, la primera se llama SQL2 (también llamado SQL-92), la más
reciente es el nuevo estándar, denominado SQL:1999 [MS02], que extiende SQL con conceptos
de orientación a objetos y otros conceptos novedosos de bases de datos.

SQL es un lenguaje de BD global; cuenta con enunciados de definición, consulta y
actualización de datos. Así pues, es tanto un lenguaje de definición de datos (LDD) como un
lenguaje de manipulación de datos (LMD). Además, cuenta con mecanismos para especificar
seguridad y autorización, para definir restricciones de integridad, y para especificar controles
de transacciones. También tiene reglas para insertar sentencias de SQL en lenguajes de
programación de propósito general como C, Pascal o Java.

Existe una diferencia muy importante entre SQL y el modelo relacional formal: SQL
permite que tablas (relaciones) tengan dos o más tuplas idénticas en todos los valores de sus
atributos. Por tanto, en general, una tabla de SQL no es un CONJUNTO de tuplas ya que los
conjuntos no permiten dos miembros idénticos; más bien, es un MULTICONJUNTO (bolsa)
de tuplas.

A pesar de que, como hemos visto, hay estándares, cada fabricante por unos motivos u
otros introduce pequeños cambios. En nuestro caso ante tales situaciones presentaremos la
alternativa de Oracle, ya que es el SGBD que se utiliza en esta Facultad.

Supondremos que el usuario está familiarizado con el uso de la herramienta SQL*Plus de

Oracle.

2. Tipos de Datos

SQL emplea los términos tabla, fila y columna en lugar de relación, tupla y atributo,

respectivamente. Nosotros usaremos de manera indistinta los términos correspondientes.

Como sabemos, las atributos están definidos sobre dominios, aunque en SQL2 se pueden
definir dominios, en la mayoría de los casos los atributos en SQL se definen sobre tipos de
datos que hacen las veces de dominio del atributo.

Cuando se define una nueva tabla, además de asignar nombres a sus columnas, se le asigna

a cada una de ellas un determinado tipo de datos (o dominio). Con ello se está definiendo:

Algunas partes de este capítulo se ha realizado tomando parte de los apuntes de Eva Lorenzo Iglesias y

Miguel Rodríguez Penabad.

1

Laboratorio de Bases de Datos

El conjunto de todos los valores posibles que puede tomar la columna. El SGBD se
responsabiliza de que los valores que tome la columna en todo momento sean válidos;
es decir, que estén incluidos en el dominio correspondiente.

Las operaciones que se pueden realizar con los valores de la columna (por ejemplo, si se
pueden hacer o no cálculos aritméticos).

La decisión de cuál es el tipo de datos más convenie
  • Links de descarga
http://lwp-l.com/pdf4902

Comentarios de: manual de sql (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad