Introducción al Lenguaje SQL en Bases de Datos
Introducción al Lenguaje SQL en Bases de Datos
Imen MOALLA
[Link]@[Link]
2
Presentación de SQL
3
Presentación de SQL
4
Presentación de SQL
5
Creación de las tablas
6
Création des tables
Tipo de datos
-NUMERO(N): Entero de N cifras
-NUMERO( N , M ): Real con N cifras en total, M después de la
virgulilla.
-DATE: Date complète (date et/ou heure)
-VARCHAR( N ),VARCHAR2( N ): cadena de N caracteres
(longitud variable).
-CHAR( N ): Cadena de N caracteres (longitud fija).
7
Restricciones de integridad
Una restricción de integridad es una regla que define la
coherencia de un dato o de un conjunto de datos
de la BD
Restricción sobre una columna (restricción-col)
8
Restricciones de integridad
Contrainte sur une table (contrainte-table)
.ÚNICO (lista de atributos): Se prohíbe que dos tuplas de la
la relación tiene los mismos valores para el conjunto de atributos
de la lista.
.PRIMARY KEY(liste d'attributs):Définit les attributs de la liste
como la clave primaria
.CLAVE FORÁNEA (lista de atributos) REFERENCIAS nombre-tabla
[(nomes-cols)]:Contrôle l'intégrité référentielle entre les
atributos de la lista y la tabla y sus columnas especificadas
9
Ejemplo de creación de tablas
Etudiant (NumEtud, NomEtud, PrenomEtud, #NumClass)
Classe (NumClass, NomClass)
CREAR TABLA CLASE (
NUMCLASSENUMBER(5),
NOMCLASSEVARCHAR2(10),
CLAVE PRIMARIA(NUMCLASSE);
10
Supresión / Modificación de una tabla
Supresión de tablas
. Syntaxe
Para eliminar el contenido de una tabla así como su esquema, se
utilise l’instruction qui suit :
ELIMINAR TABLA nom_table ;
Nota: Atención, la eliminación de una tabla genera la
pérdida de los datos que contiene.
. Ejemplo
Para eliminar la tabla ESTUDIANTE así como su contenido, se hace
recurso a la instrucción :
DROPTABLE ESTUDIANTE ;
11
Suprimir / Modificación de una tabla
Modificación de las tablas
Existen varias modificaciones que se pueden realizar en una tabla
donnée:
. Añadir atributos
Después de crear la base de datos, tareas de mantenimiento
parecen a veces necesarios. De ahí la adición de un nuevo atributo:
ALTER TABLE nombre_tabla
ADD(tipo de atributo);
. Ejemplo
Agregar el campo Número de teléfono a la tabla Estudiante equivale a
écrire :
ALTER TABLE Estudiante
AGREGAR(Num_tel varchar(10));
12
Supresión / Modificación de una tabla
. Modificación de atributos
Después de crear la base de datos, se puede modificar el tipo
de un atributo utilizando la siguiente instrucción:
ALTER TABLE nom_table
MODIFICAR(tipo de atributo);
. Ejemplo
Modificar el número de dígitos del campo Num_tel de la tabla
El estudiante necesita recurrir a la instrucción:
ALTERAR TABLA Estudiante
MODIFICAR(Num_tel varchar(8));
13
Manipulación de datos
. Adición de datos
Para agregar una fila (tupla) en una tabla, se procede
comme suit :
INSERTAR EN nom_table
VALORES( valor_atributo1, valor_atributo2,…) ;
. Ejemplo
Dada la tablaEstudiante(NumEstud, nombre, apellido, ciudad). Si
se desea insertar la información de un nuevo estudiante
disponiendo de la siguiente información (1234, Ben Salah, Salah,
Djerba), se escribe :
INSERTAR EN ESTUDIANTE
VALORES(1234, BEN SALAH, SALAH, DJERBA);
14
Manipulación de datos
. Modificación de datos
Para modificar el valor de un atributo relacionado con uno o varios
tuplas de una tabla, se procede de la siguiente manera:
ACTUALIZARnom_tabla
SETattribut1 = valeur1, attribut2 = valeur2
[CONDICIÓNdonde]
. Ejemplo
Modificar la ciudad del estudiante Salah Ben Salah que vive
ahora en Túnez, escribimos en este caso:
ACTUALIZARESTUDIANTE
SETVILLE=TUNIS
WHERENumEtud=1234;
15
Manipulación de datos
.Supresión de datos
Se trata de eliminar uno o varios tupples de una tabla.
Para ello, escribimos:
ELIMINAR DE nom_table
[CONDICIÓNdonde];
. Ejemplo
Eliminar al estudiante deNumEtd 1234 de la tabla
Estudiante, se escribe:
ELIMINAR DE ESTUDIANTE
WHERENumEtd=1234 ;
16
Interrogación de datos
. Generalidades
Se trata de buscar uno o varios tuplas de la base de datos.
Sintaxis:
. Aún nomd’attribut(de colonne)
SELECCIONAR A1,…., A2 . Rjun nombre de relación (de tabla)
. DEFINIDO a partir de cuáles
DE R1,…….,Rm mes tablas el resultado está calculado
DEnom_tabla;
.Ejemplo
Mostrar la lista de todos los estudiantes
SELECCIONAR * DE ESTUDIANTE;
Algunos atributos:
SELECCIONAR atributo1, atributo2,…
DE nom_table;
. Ejemplo
Mostrar la lista de nombres de los estudiantes
SELECCIONAR NOMBRE
DE ESTUDIANTE
18
Interrogación de datos
. Restricción
Las restricciones se traducen en SQL utilizando el predicado « WHERE »
como sigue :
SELECCIONAR atributo1, atributo2, DE nombre_tabla
CONDICIONES WHERE;
Una condición simple es la comparación entre dos
expresiones o más en medio de un operador lógico (=, !=, <,
<=, >, >=)
. Ejemplo 1
Lista de estudiantes que se llaman Ali
SELECCIONAR * DE ESTUDIANTE
DONDEPRENOM ='ALI';
19
Interrogación de datos
. Ejemplo 3
Lista de estudiantes que no se llaman Ali
SELECCIONAR * DE ESTUDIANTES
DÓNDEPRENOM != 'ALI';
. Ejemplo 4
Liste des étudiants ayant les NumEtd inférieurs à 100
SELECT*FROMETUDIANT
WHERENumEtd < 100;
. Ejemplo 5
Lista de estudiantes cuyos NumEtd están entre 100 y 200
SELECCIONAR * DE ESTUDIANTE
DÓNDE NumEtd ENTRE 100 Y 200;
20
Interrogación de datos
. Uniones
. La unión permite combinar dos o más tablas con el fin de
extraer datos.
. La unión se realiza utilizando una columna común entre las tablas
qui habituellement est la clé primaire
. Cuando una columna proyectada se encuentra en ambas tablas a
unir, el nombre de la columna proyectada debe ir precedido del nombre
de la tabla de donde se extrajeron los datos
. Cuando una columna proyectada se encuentra en una sola entre las
mesas a unir, no es necesario indicar el nombre de la
mesa
21
Interrogación de datos
. Ejemplo de consulta de unión simple:
TablaA (idTablaA,columna1,columna2)
TablaB (idTablaB, columna1, columna2, #idtablaA)
23
Interrogación de datos
Ejemplo de unión entre dos tablas:
25
Funciones de agregación
. Una función de agregación calcula un valor a partir de una
lista de valores en una columna.
. SQL también permite agrupar tuplas de una relación según
ciertos criterios, como el valor de otra columna.
. Estos operadores se aplican en una cláusula SELECT
26
Funciones de agregación
. Ejemplo:
SELECCIONAR contar(*)
DE LOS ESTUDIANTES ;
27
Funciones de agregación
. Ejemplo:
28