Trabajo SQL
Trabajo SQL
Núcleo Oriente
Séptimo Semestre
Bases de Datos
Profesor: Bachilleres:
Aquiles Torrealba Alvarado, Alberto C.I. 28.628.936
Marcano, Ricardo C.I. 28.681.432
Rodríguez, Manuel C.I. 28.702.402
Torrealba, César C.I. 28.702.209
Origen ..................................................................................................................... 4
Evolución ............................................................................................................... 6
CREATE ............................................................................................................... 13
CREATE DATABASE .................................................................................. 13
CREATE TABLE ........................................................................................ 13
CREATE INDEX ........................................................................................ 15
ALTER ................................................................................................................. 16
ALTER TABLE .......................................................................................... 16
DROP ................................................................................................................... 17
DROP DATABASE ...................................................................................... 17
DROP INDEX ............................................................................................. 17
DROP COLUMN .......................................................................................... 18
TRUNCATE ........................................................................................................... 19
TRUNCATE TABLE .................................................................................... 19
SELECT ............................................................................................................... 20
FROM ........................................................................................................ 21
WHERE ...................................................................................................... 21
ORDER BY ................................................................................................. 22
INSERT ............................................................................................................... 25
UPDATE ............................................................................................................... 28
DELETE ............................................................................................................... 29
Bibliografía........................................................................................................... 30
Definición
SQL (por sus siglas en inglés Structured Query Language; en español lenguaje
de consulta estructurada) es un lenguaje de dominio específico, diseñado para
administrar, y recuperar información de sistemas de gestión de bases de datos
relacionales. Una de sus principales características es el manejo del álgebra y el
cálculo relacional para efectuar consultas con el fin de recuperar, de forma sencilla,
información de bases de datos, así como realizar cambios en ellas.
Sin embargo, este primer estándar no cubría todas las necesidades de los
desarrolladores e incluía funcionalidades de definición de almacenamiento que se
consideró suprimirlas. Así que, en 1992, se lanzó un nuevo estándar ampliado y
revisado de SQL llamado "SQL-92" o "SQL2".
El ANSI SQL sufrió varias revisiones y agregados a lo largo del tiempo, descritas
en la siguiente tabla:
Características generales de SQL
Tipos de datos:
Números enteros:
Fechas y tiempos:
Cadena de caracteres:
CHAR (tamaño): Tiene una cadena de longitud fija (puede contener letras,
números y caracteres especiales). El tamaño fijo se especifica entre
paréntesis. Puede almacenar hasta 255 caracteres.
VARCHAR (tamaño): Tiene una cadena de longitud variable (puede contener
letras, números y caracteres especiales). El tamaño máximo se especifica
entre paréntesis. Puede almacenar hasta 255 caracteres. Nota: si agrega
un valor mayor que 255, se convertirá en un tipo de texto.
TINYTEXT: Tiene una cadena con una longitud máxima de 255 caracteres.
TEXT: Tiene una cadena con una longitud máxima de 65.535 caracteres.
BLOB: Para BLOB (Objetos grandes binarios). Almacena hasta 65.535 bytes
de datos.
MEDIUMTEXT: Tiene una cadena con una longitud máxima de 16,777,215
caracteres.
MEDIUMBLOB: Para BLOB (Objetos grandes binarios). Tiene capacidad para
16.777.215 bytes de datos.
LONGTEXT: Tiene una cadena con una longitud máxima de 4.294.967.295
caracteres.
LONGBLOB: Para BLOB (Objetos grandes binarios). Tiene capacidad para
4.294.967.295 bytes de datos.
Enumeración:
ENUM (x, y, z, etc.): Permite ingresar una lista de valores posibles. Puede
enumerar hasta 65535 valores en una lista ENUM. Si se inserta un valor que
no está en la lista, se insertará un valor en blanco. Los valores se ordenan
en el orden en que los ingresas. Ingrese los valores posibles en este
formato: ENUM ('X', 'Y', 'Z').
SET: Similar a ENUM, excepto que SET puede contener hasta 64 elementos
de lista y puede almacenar más de una opción.
Binarios:
DDL utiliza una serie de comandos con una sintaxis específica para llevar a
cabo las mencionadas funciones, si esta sintaxis no es seguida adecuadamente, no
se llevarán a cabo los cambios solicitados. A continuación, se presentan los grupos
de comandos en DDL más utilizados.
CREATE
CREATE DATABASE
La base de datos que se acaba de crear, tiene por nombre “Aeropuerto”. El uso
de punto y coma al final de las sentencias es muy importante.
CREATE TABLE
ID_Avión int,
Vuelos int,
Veloc_Prom float
);
Esta tabla tiene el nombre Aviones y cada columna tiene su propia
denominación junto a sus respectivos tipos de datos y longitud. Es imperativo utilizar
coma al final de la declaración de cada columna. La tabla creada luce así:
ID_Avión int,
Vuelos int,
Veloc_Prom float,
);
ON Aviones (Color);
Hay que tener en cuenta que crear múltiples índices puede llevar mucho tiempo,
por ende, se recomienda solo crear índices para datos que se utilicen mucho a lo
largo del código. Un índice puede incluso referirse a múltiples columnas con la
siguiente sintaxis:
ALTER TABLE
Otros comandos que utilizan ALTER son ALTER DATABASE, ALTER STOGROUP,
ALTER TABLESPACE, ALTER VIEW, ALTER INDEX, entre otros.
DROP
DDL también incluye múltiples comandos relacionados con soltar o DROP que
nos permiten borrar algún objeto en la base de datos, con ellos se puede eliminar
una tabla, vista, índice y básicamente cualquier objeto que soporte la base de datos
e incluso la misma base de datos.
Cabe destacar que una vez es eliminado el objeto con estos comandos, no
puede recuperarse. Dentro de este conjunto de comandos, los más usados son los
siguientes:
DROP DATABASE
DROP INDEX
ON Aviones;
DROP COLUMN
Para poder utilizar este tipo de comandos específicos, en este caso para borrar
una columna, es necesario señalar qué tabla será modificada utilizando el comando
ALTER TABLE, de la siguiente manera:
Otros comandos que utilizan DROP son DROP STOGROUP, DROP ALIAS, DROP
TABLESPACE, DROP LOCATION, entre otros.
TRUNCATE
TRUNCATE TABLE
Este comando nos permite borrar toda la información contenido dentro en una
tabla, es conveniente su uso cuando se requiere remover los registros de una tabla,
pero conservar la estructura ya creada.
En nuestro ejemplo, este comando no tendrá efecto, ya que no hay datos dentro
de la tabla. A diferencia del comando DROP TABLE, que hubiera eliminado por
completo la tabla.
Lenguaje de manipulación de datos (DML)
Al igual que DDL, el lenguaje de manipulación de datos (DML según sus iniciales
en inglés, Data Manipulation Language) es un lenguaje proporcionado por los
sistemas gestores de bases de datos.
SELECT
Esta sentencia se utiliza para seleccionar datos de una base de datos. Lo cual
es bastante general, pero ello implica que tiene una gran variedad de usos, desde
especificar qué dato se desea modificar o eliminar hasta la cantidad de datos que
se desean ordenar dentro de sus tablas.
FROM
Con este comando se puede especificar con qué tabla se desea trabajar.
Funciona tanto con SELECT, como con DELETE. Utilizando el mismo ejemplo con el
que venimos trabajando, podría establecerse una sentencia así:
WHERE
Cuando se tiene una tabla con mucha información y solo se quiere seleccionar
una parte en específico, es útil esta cláusula. Con WHERE se puede delimitar la
selección en función de un dato en particular, por ejemplo:
ORDER BY
Para este ejemplo, se añadirán datos a la tabla de ejemplo, de modo que sea
más fácil de visualizar el efecto de la sentencia:
ORDER BY Marca;
La tabla pasaría a verse así:
En este caso, se ve que hay dos Marcas iguales, en estos casos ORDER BY no
modifica el orden, pero se le podría señalar una columna secundaria, para que
ordene las filas con respecto a esta, si hubiera dos iguales. Además, podría hacerse
decreciente el orden secundario de la siguiente manera:
Una sentencia INSERT de SQL agrega uno o más registros a una (y solo una)
tabla en una base de datos relacional.
INSERT INTO
Aviones
VALUES
SELECT *
FROM Aviones
FROM Aviones
UPDATE Aviones
Hace uso de la cláusula SET para asignar el nuevo valor del registro (o los
registros) y la cláusula opcional WHERE especificar cuáles datos se deben actualizar.
Si no se pasa, todos los datos de la tabla se actualizarán con los nuevos valores
pasados en la cláusula SET.
https://aws.amazon.com/es/what-is/sql/
https://es.wikipedia.org/wiki/SQL
https://www.geeksforgeeks.org/sql-ddl-dql-dml-dcl-tcl-commands/
https://www.techtarget.com/whatis/definition/Data-Definition-Language-DDL
https://www.w3schools.com/sql/sql_create_table.asp
https://www.w3schools.com/sql/sql_create_index.asp
https://www.techtarget.com/searchdatamanagement/answer/Whats-the-
difference-between-DDL-and-DML
https://www.w3schools.com/sql/sql_select.asp
https://www.w3schools.com/sql/sql_ref_from.asp
https://www.w3schools.com/sql/sql_where.asp
https://www.w3schools.com/sql/sql_orderby.asp
https://es.wikipedia.org/wiki/SQL#INSERT_(Insertar)
https://es.wikipedia.org/wiki/SQL#UPDATE_(Actualizar)
https://doc.4d.com/4Dv19/4D/19/UPDATE.300-5434549.es.html
https://www.w3schools.com/sql/sql_delete.asp