los sistemas de bases de datos necesitan un lenguaje de consulta que sea cómodo para el usuario. Por lo que en la presente unidad se estudiará el lenguaje estructurado de consulta SQL, el cual es un lenguaje estándar para trabajar con base de datos relacionales y es soportado prácticamente por todos los productos del mercado.
Usando SQL es posible definir la estructura de los datos, modificar los datos de la base de datos y especificar las restricciones de seguridad.
2. SQL nos permite realizar consultas a la base de datos.
Pero el nombre se queda corto ya que SQL además
realiza funciones de definición, control y gestión de la
base de datos.
Es un lenguaje de acceso a bases de datos que explota
la flexibilidad y potencia de los sistemas relacionales y
permite así gran variedad de operaciones.
4. El lenguaje está compuesto por comandos, clausulas, operadores y funciones agregadas. Estos elementos
se combinan en las instrucciones para crear, actualizar y manipular las bases de datos.
Comandos DLL
Comando Descripción
CREATE Utilizado para crear nuevas tablas, campos e índices
DROP Empleado para eliminar tablas e índices
ALTER
Utilizado para modificar las tablas agregando campos o cambiando
la definición de los campos.
5. Comandos DML
Comando Descripción
SELECT
Utilizado para consultar registros de la base de datos que satisfagan un
criterio determinado.
INSERT
Utilizado para insertar o adicionar datos en la base de datos en una
única operación
UPDATE
Utilizado para modificar los valores de los campos y registros
especificados.
DELETE Utilizado para eliminar registros de una tabla de una base de datos.
6. Clausulas: son condiciones de modificación utilizadas para definir los datos que desea
seleccionar o manipular.
Clausula Descripción
FROM
Utilizada para especificar la tabla de la cual se van a seleccionar los
registros
WHERE
Utilizada para especificar las condiciones que deben reunir los registros que
se van a seleccionar
GROUP BY Utilizada para separar los registros seleccionados en un grupo especifico
HAVING Utilizada para expresar la condición que debe satisfacer cada grupo
ORDER BY
Utilizada para ordenar los registros seleccionados de acuerdo con un orden
especifico.
7. OPERADORES LÓGICOS
Operador Uso
AND
Es el “Y” lógico. Evalúa dos condiciones y devuelve un valor de verdad sólo si ambas son
ciertas.
OR
Es el “O” lógico. Evalúa dos condiciones y devuelve un valor de verdad si alguna de las
dos es cierta.
NOT Negación lógica. Devuelve el valor contrario de la expresión.
8. OPERADORES DE COMPARACIÓN
Operador Uso
< Menor que
> Mayor que
<> Distinto de
<= Menor igual que
>= Mayor igual que
= Igual que
BETWEEN Utilizado para especificar un intervalo de valores.
LIKE Utilizado en la comparación de un modelo
IN Utilizado para especificar registros de una base de datos
9. FUNCIONES DE AGREGADO: se usan dentro de una clausula SELECT en grupos de registros
para devolver un único valor que se aplica a un grupo de registros.
Función Descripción
AVG Utilizada para calcular el promedio de los valores de un campo determinado
COUNT Utilizada para devolver el número de registros de la selección
SUM Utilizada para devolver la suma de todos los valores de un campo determinado
MAX Utilizada para devolver el valor más alto de un campo especificado
MIN Utilizada para devolver el valor más bajo de un campo especificado
10. La estructura básica de una expresión SQL consiste en tres clausulas: select, from y
where. Las consultas habituales de SQL tienen la forma:
select A1, A2, …, An
from r1, r2, …, rm
where P
Donde cada A1 representa un atributo, r1 una relación (las tablas) y P el predicado, el
cual es la expresión a validar.
11. Cláusula select
Considere la consulta simple, basada en el ejemplo el Observador
del estudiante: Obtener el nombre de todos los estudiantes de la
relación Estudiante. La consulta queda de la siguiente forma:
SELECT NombreApellido
FROM ESTUDIANTE
Recuerde que: debe tener presente que los nombres
de los atributos y de las tablas, deben estar escritos con
la misma gramática utilizada al momento de
diagramarlas.
Cláusula from
En esta cláusula se indican la tabla o tablas a las que vamos a tener
acceso. Las tablas deben existir, si se enuncia una tabla en esta
cláusula que no esté especificada generara un error en la consulta.
12. Cláusula select
Obtener los nombre de las instituciones de donde
proceden los estudiantes, la consulta se realiza de la
siguiente forma:
select NomColeProce
from INFOACADEMICA
En esta consulta se pueden generar datos duplicados ya
que varios estudiantes pueden proceder de la misma
institución educativa, si deseamos que no halla
duplicados utilizamos la palabra distinct después del
select, es decir:
Select distinct NomColeProce
from INFOACADEMICA
Si queremos consultar todos los datos de una
tabla utilizamos el símbolo asterisco “*”, como
se expresa a continuación:
Select *
from DocenteDirGrupo
13. Cláusula WHERE
Se utiliza para seleccionar aquellos registros que cumplen una o más condiciones. Observemos el siguiente ejemplo:
“obtener todos los estudiantes que pertenezcan al grado 6A”, la consulta se escribe de la siguiente forma:
select GradoGrupo
from ESTUDIANTE
where GradoGrupo = ‘6A’
observemos el siguiente ejemplo en el cual se utilizan los operadores lógicos y operadores de comparación:
“obtener todos los estudiantes que pertenezcan al grado 6A y tengan más de 12 años de edad”
select GradoGrupo
from ESTUDIANTE
where GradoGrupo = ‘6A’ and Edad > 12
14. Cláusula WHERE
Si deseamos conocer más de un atributo de la consulta que se esté realizando solo lo incluimos en la
cláusula select, tomando el ejemplo anterior la consulta quedaría de la siguiente forma:
select GradoGrupo, Edad
from ESTUDIANTE
where GradoGrupo = ‘6A’ and Edad > 12
15. Borrado
Crea una consulta de elimina registros de una o más de las tablas listadas en las clausula
from que satisfagan la cláusula where. Las solicitudes de borrado se expresan casi igual
que las consultas. Solo se pueden borrar tuplas completas y no se puede borrar solo
valores de atributos concretos. La sintaxis utilizada es la siguiente:
delete from r
where P;
Donde P representa el criterio y r la relación. Se puede utilizar delete para eliminar
registros de una única tabla o desde carios lados de una relación uno a muchos. Si se desea
borrar tuplas de varias relaciones hay que utilizar una orden delete por cada relación.
16. Borrado
Ejemplos utilizando la consulta delete:
Borra todas las tuplas de la relación DETALLE
delete from DETALLE
Borra todas las tuplas con E-mail de la tabla ESTUDIANTE
delete from ESTUDIANTE
where E-mail <> NULL;
Borrar todas las profesiones que sean iguales a Administración de la tabla DOCENTEDIRGRUPO.
delete from DocenteDirGrupo
where Profesion = ‘Adminsitracion’
17. Inserción
Por medio de esta consulta se agrega un registro en una tabla. Se le conoce como una
consulta de datos añadidos. Esta consulta puede ser de dos tipos: insertar un único registro o
insertar en una tabla los registros contenidos en otra tabla.
Para insertar los registros en una relación, se especifica la tupla que se desea insertar, se
debe tener encuenta que los valores de los atributos de las tuplas que se inserten deben
pertenecer al dominio de los atributos y deben estar en el mismo orden en que fueron
registrados en las tablas.
La sintaxis es la siguiente:
insert into tabla
values (valaor1, valor2, valorN…)
18. Inserción
supóngase que se desea insertar la información académica de un nuevo estudiante, la identificación del
estudiante es 11002247858, colegio de procedencia Institución Educativa San Juan Bautista, ultimo
grado realizado séptimo (7) de secundaria, jornada matinal, colegio público, el retiro se debió a
traslado de los padres, no repitió ningún grado y se retiró en el año 2012. La consulta queda de la
siguiente forma:
insert into INFOACDEMICA
values (11002247858, ‘Institución Educativa San Juan Bautista’, ‘Séptimo’, ‘Matinal’, ‘Publico’,
‘Traslado de los padres’, ‘No repitió ningún grado’, ‘2012’);
19. Actualización
En determinadas situaciones se ve la necesidad de modificar un valor dentro de una tupla sin
cambiar tos los valores de estas, para ello se debe utilizar la instrucción update. La sintaxis
es:
update tabla
set campo1=valor1, campo2=valor2,…
where criterio;
20. Actualización
Actualizar el año lectivo de la tabla DETALLE
update DETALLE
set añolectivo = 2013
Actualizar el grado a cargo del docente director de grupo Leyla Ruiz
Update DOCENTEDIRGRUPO
Set GrupoAcargo = ‘6A’
Where NombreApellido = ‘Leyla Ruiz’
Actualizar todos los registros de la taba SEGURIDADSOCIAL
update SEGURIDADSOCIAL
set NomSeguridadSS = ‘FAMISALUD’