0% encontró este documento útil (0 votos)
31 vistas23 páginas

Preparado Como Parte de Los Contenidos de La Asignatura Diseño y Administración de Base de Datos

Teoria

Cargado por

Flow Yyt
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
31 vistas23 páginas

Preparado Como Parte de Los Contenidos de La Asignatura Diseño y Administración de Base de Datos

Teoria

Cargado por

Flow Yyt
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 23

UNIVERSIDAD MAYOR DE SAN ANDRÉS

CARRERA DE INFORMÁTICA

SQL
Preparado como parte de los contenidos de la Asignatura
Diseño y Administración de Base de Datos

M.SC. ALDO VALDEZ ALVARADO


Índice
1 ¿Qué es SQL?
2 Bases de Datos Relacionales
3 La Importancia del SQL
4 Consultas en SQL
1. ¿Qué es SQL?
Expresividad
❑ Teorema de Codd
➢ El álgebra relacional y el cálculo relacional
tienen un poder expresivo equivalente
➢ Es decir, podemos compilar una consulta del
cálculo declarativo en una consulta del álgebra
relacional
❑ SQL agrega más poder
➢ Se puede capturar una sentencia SQL en varias
del álgebra relacional.
❑ SQL es un lenguaje de programación estándar
para mantener y utilizar datos en bases de datos
relacionales.
❑ SQL es un lenguaje que permite a los usuarios
interactuar con bases de datos relacionales.
❑ Tiene una larga historia de desarrollo por diversas
organizaciones desde la década de 1970.
❑ En 1986, el Instituto Estadounidense de
Estándares Nacionales (ANSI) publicó el estándar
con respecto al lenguaje, y ha sufrido varias
revisiones desde ese momento. (Rockoff, 2017)
❑ En términos generales, hay tres componentes
principales del lenguaje SQL.
❑ El primero se llama DML (Data Manipulation
Language) o lenguaje de manipulación de datos,
este permite al lenguaje recuperar, actualizar,
agregar o eliminar datos en una base de datos, es
decir, realizar consultas.
❑ El segundo componente se llama DDL (Data
Definition Language) o Lenguaje de definición de
datos, que le permite crear y modificar el esquema
de la base de datos en sí. (Rockoff, 2017)
❑ El tercer componente, DCL (Data Control
Language) o Lenguaje de Control de Datos,
mantiene la seguridad adecuada para la base de
datos.
❑ SQL es más un lenguaje declarativo. En SQL, el
objetivo deseado a menudo se declara con una
sola sentencia.
❑ La estructura más simple de SQL es posible
porque se refiere solo a las bases de datos
relacionales en lugar de a la totalidad de los
sistemas informáticos.(Rockoff, 2017)
2. Bases de Datos
Relacionales
❑ Una base de datos relacional es una colección de
datos, almacenada en cualquier cantidad de
tablas.
❑ En el uso común, el término relacional puede
tomarse para indicar que las tablas generalmente
están relacionadas entre sí de alguna manera.
❑ Sin embargo, en términos más precisos, relacional
se refiere a la teoría de relaciones matemáticas, y
tiene que ver con las propiedades lógicas que
rigen la manera en que las tablas están
relacionadas.
❑ En este punto, es útil visualizar algunas tablas y
los datos que contienen.
❑ La costumbre común es mostrar una tabla como
una matriz de filas y columnas. Cada fila
representa un registro en la tabla. Cada columna
representa un campo en la tabla. El encabezado
de la tabla normalmente contiene los nombres de
los campos. Las filas restantes muestran los datos
reales.
❑ En la terminología de SQL, los registros y los
campos se denominan filas y columnas, que
corresponden a la representación visual.
❑ De ahora en adelante, utilizaremos los términos
filas y columnas en lugar de registros y campos
para describir el diseño de tablas en bases de
datos relacionales. (Rockoff, 2017)
3. La Importancia del
SQL
❑ Antes de abandonar el tema general de las bases
de datos relacionales, veamos una breve
descripción histórica para proporcionar una
apreciación de la utilidad de las bases de datos
relacionales y la importancia de SQL.
❑ En los comienzos de la informática en la década
de 1960, los datos generalmente se almacenaban
en cinta magnética o en archivos en unidades de
disco. (Rockoff, 2017)
❑ Los programas informáticos, escritos en lenguajes
como FORTRAN y COBOL, generalmente leen los
archivos de entrada y procesan un registro a la
vez, y finalmente mueven los datos a los archivos
de salida.
❑ El procesamiento era necesariamente complejo
porque los procedimientos debían desglosarse en
muchos pasos individuales que implicaban tablas
temporales, clasificación y pases múltiples a través
de los datos hasta que se podía producir el
resultado deseado.(Rockoff, 2017)
❑ En la década de 1970, se hicieron avances a
medida que se inventaron y utilizaron bases de
datos jerárquicas y de red.
❑ Estas bases de datos más nuevas, a través de un
elaborado sistema de punteros internos,
facilitaban la lectura de los datos.(Rockoff, 2017)
❑ Por ejemplo, un programa podría leer un registro
para un cliente, apuntar automáticamente a todos
los pedidos para ese cliente y luego a todos los
detalles de cada pedido. Pero, básicamente, esa
información aún tenía que procesarse un registro
a la vez. (Rockoff, 2017)
❑ El principal problema con el almacenamiento de
datos antes de las bases de datos relacionales no
era cómo se almacenaban los datos, sino cómo se
accedía.
❑ El verdadero avance con las bases de datos
relacionales se produjo cuando se desarrolló el
lenguaje de SQL, ya que permitía un método
completamente nuevo para acceder a los datos.
(Rockoff, 2017)
❑ A diferencia de los métodos anteriores de
recuperación de datos, SQL permitió al usuario
acceder a un gran conjunto de datos a la vez.
❑ Con una sola instrucción, un comando SQL podría
recuperar o actualizar miles de registros de
múltiples tablas.
❑ Esto eliminó una gran complejidad. Los
programas de computadora ya no necesitan leer
un registro a la vez en una secuencia especial,
mientras se decide qué hacer con cada registro.
(Rockoff, 2017)
❑ Lo que solía requerir cientos de líneas de código
de programación ahora se podía lograr con solo
unas pocas líneas de lógica. (Rockoff, 2017)
4. Consultas en SQL
DISTINCT: Opcional. La respuesta no Lista-objetivos : Lista de expresiones
debería contener duplicados. Por sobre atributos de tablas en la lista-
defecto SQL no elimina los duplicados. relaciones

SELECT [DISTINCT] lista-objetivos


FROM lista-relaciones
WHERE condiciones

Condiciones: Comparaciones
combinadas usando AND, OR y Lista-relaciones : Lista de nombres
NOT. Las comparaciones son de relaciones, posiblemente con
Atributo op Constante o Atributo1 una cláusula "AS" después de cada
op Atributo2, donde op es alguno de nombre
los siguientes =,,,, etc.
Semántica
SELECT [DISTINCT] lista-objetivos
FROM lista-relaciones
WHERE condiciones

1. FROM: Realiza el producto cartesiano de las


tablas
2. WHERE: Verifica condiciones, descarta tuplas que
no cumplen la condición
3. SELECT: Borra campos no requeridos
4. DISTINCT (opcional): Elimina filas duplicadas
Aldo Ramiro Valdez Alvarado
Licenciado en Informática
Master en Dirección Estrategica en
Tecnologías de la Información
Máster en Business Intelligence y Big Data
Docente Titular de Pregrado en la UMSA
Docente de Postgrado en la UMSA Muchas Gracias!!!
Ex - Coordinador del Postgrado en
Informática UMSA
Conferencista Nacional e Internacional
http://aldovaldezalvarado.blogspot.com/
https://www.linkedin.com/in/msc-aldo-
valdez-alvarado-17464820
[email protected]

También podría gustarte