0% encontró este documento útil (0 votos)
74 vistas30 páginas

Trabajo SQL

Este documento proporciona una introducción al lenguaje de consultas estructuradas SQL. Explica que SQL es un lenguaje diseñado para administrar y recuperar información de bases de datos relacionales, y que originalmente se basó en el álgebra y cálculo relacional. También resume brevemente el origen de SQL, su evolución a través de diferentes estándares y algunas de sus características generales como su capacidad para definir datos, manipular datos y controlar transacciones.

Cargado por

Orlando
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)
74 vistas30 páginas

Trabajo SQL

Este documento proporciona una introducción al lenguaje de consultas estructuradas SQL. Explica que SQL es un lenguaje diseñado para administrar y recuperar información de bases de datos relacionales, y que originalmente se basó en el álgebra y cálculo relacional. También resume brevemente el origen de SQL, su evolución a través de diferentes estándares y algunas de sus características generales como su capacidad para definir datos, manipular datos y controlar transacciones.

Cargado por

Orlando
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/ 30

Universidad “Santa María”

Núcleo Oriente
Séptimo Semestre
Bases de Datos

Lenguaje Estructurado de Consultas


(SQL)

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

Barcelona, 30 de enero de 2023


Índice
Definición ............................................................................................................... 3

Origen ..................................................................................................................... 4

Evolución ............................................................................................................... 6

Características generales de SQL ....................................................................... 7

Lenguaje de definición de datos (DDL) ............................................................. 12

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

Lenguaje de manipulación de datos (DML)....................................................... 20

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.

Originalmente basado en el álgebra relacional y en el cálculo relacional, SQL


consiste en un lenguaje de definición de datos, un lenguaje de manipulación de
datos y un lenguaje de control de datos. El alcance de SQL incluye la inserción de
datos, consultas, actualizaciones y borrado, la creación y modificación de esquemas
y el control de acceso a los datos.

El lenguaje de consulta estructurada (SQL) es un lenguaje de consulta popular


que se usa con frecuencia en todos los tipos de aplicaciones. Los analistas y
desarrolladores de datos aprenden y usan SQL porque se integra bien con los
diferentes lenguajes de programación. Por ejemplo, pueden incrustar consultas SQL
con el lenguaje de programación Java para crear aplicaciones de procesamiento de
datos de alto rendimiento con los principales sistemas de bases de datos SQL, como
Oracle o MS SQL Server. Además, SQL es muy fácil de aprender, ya que en sus
instrucciones se utilizan palabras clave comunes en inglés..
Origen

Los orígenes de SQL están ligados a las bases de datos relacionales,


específicamente las que residían en máquinas IBM bajo el sistema de gestión
System R, desarrollado por un grupo de la IBM en San José, California.

Al principio fue IBM, e IBM creó SQL. SQL, originalmente un acrónimo de


"Lenguaje de consulta estructurado" ("Structured Query Language”), es un lenguaje
unificado para definir, consultar, modificar y controlar los datos en una base de datos
relacional. Su nombre se pronuncia oficialmente "ess-KIU-ell" (según el American
National Standards Institute).

El modelo relacional de gestión de bases de datos fue propuesto en 1970 por el


Dr. E. F. Codd en el Laboratorio de Investigación de IBM en San José, California, y
se desarrolló durante la década siguiente en universidades y laboratorios de
investigación.

En 1970, E. F. Codd propone el modelo relacional y asociado a este un


sublenguaje de acceso a los datos basado en el cálculo de predicados. Basándose
en estas ideas, los laboratorios de IBM definieron el lenguaje SEQUEL (Structured
English Query Language) que más tarde fue ampliamente implementado por el
sistema de gestión de bases de datos (SGBD) experimental System R, desarrollado
en 1977 también por IBM. Sin embargo, fue Oracle quien lo introdujo por primera
vez en 1979 en un producto comercial.

El SEQUEL terminó siendo el predecesor de SQL, que es una versión


evolucionada del primero. SQL pasa a ser el lenguaje por excelencia de los diversos
sistemas de gestión de bases de datos relacionales surgidos en los años siguientes
y fue por fin estandarizado en 1986 por el ANSI, dando lugar a la primera versión
estándar de este lenguaje, "SQL-86" o "SQL1". Al año siguiente este estándar es
también adoptado por ISO.

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".

En la actualidad SQL es el estándar de facto de la inmensa mayoría de los


SGBD comerciales. Y, aunque la diversidad de añadidos particulares que incluyen
las distintas implementaciones comerciales del lenguaje es amplia, el soporte al
estándar SQL-92 es general y muy amplio.
Evolución

El ANSI SQL sufrió varias revisiones y agregados a lo largo del tiempo, descritas
en la siguiente tabla:
Características generales de SQL

La función de crear, es aquella que se encarga de crear tablas que contengan


grupos específicos de información. SQL 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.

Es un lenguaje declarativo de "alto nivel" o "de no procedimiento" que, gracias


a su fuerte base teórica y su orientación al manejo de conjuntos de registros (y no
a registros individuales) permite una alta productividad en codificación y la
orientación a objetos. De esta forma, una sola sentencia puede equivaler a uno o
más programas que se utilizarían en un lenguaje de bajo nivel orientado a registros.
SQL también tiene las siguientes características:

 Lenguaje de definición de datos: El LDD de SQL proporciona comandos para


la definición de esquemas de relación, borrado de relaciones y
modificaciones de los esquemas de relación.
 Lenguaje interactivo de manipulación de datos: El LMD de SQL incluye
lenguajes de consultas basado tanto en álgebra relacional como en cálculo
relacional de tuplas.
 Integridad: El LDD de SQL incluye comandos para especificar las
restricciones de integridad que deben cumplir los datos almacenados en la
base de datos.
 Definición de vistas: El LDD incluye comandos para definir las vistas.
 Control de transacciones: SQL tiene comandos para especificar el comienzo
y el final de una transacción.
 SQL incorporado y dinámico: Esto quiere decir que se pueden incorporar
instrucciones de SQL en lenguajes de programación como: C++, C, Java,
PHP, COBOL, Pascal y Fortran.
 Autorización: El LDD incluye comandos para especificar los derechos de
acceso a las relaciones y a las vistas.

Tipos de datos:

Algunos de los tipos de datos básicos de SQL son:

Números enteros:

 TYNYINT (tamaño): -128 a 127 normal. 0 a 255 SIN FIRMAR *. La cantidad


máxima de dígitos se puede especificar entre paréntesis.
 SMALLINT (tamaño): -32768 a 32767 normal. 0 a 65535 SIN FIRMAR *. La
cantidad máxima de dígitos se puede especificar entre paréntesis.
 MEDIUMINT (tamaño): -8388608 a 8388607 normal. 0 a 16777215 SIN
FIRMAR *. La cantidad máxima de dígitos se puede especificar entre
paréntesis.
 INT (tamaño): -2147483648 a 2147483647 normal. 0 a 4294967295 SIN
FIRMAR *. La cantidad máxima de dígitos se puede especificar entre
paréntesis.
 BIGINT (tamaño): -9223372036854775808 a 9223372036854775807
normal. 0 a 18446744073709551615 SIN FIRMAR *. La cantidad máxima de
dígitos se puede especificar entre paréntesis.
Números en punto flotante:

 FLOAT (tamaño, d): Un pequeño número con un punto decimal flotante. La


cantidad máxima de dígitos se puede especificar en el parámetro de tamaño.
El número máximo de dígitos a la derecha del punto decimal se especifica en
el parámetro d.
 DOBLE (tamaño, d): Un número grande con un punto decimal flotante. La
cantidad máxima de dígitos se puede especificar en el parámetro de tamaño.
El número máximo de dígitos a la derecha del punto decimal se especifica en
el parámetro d.
 DECIMAL (tamaño, d): Un DOBLE almacenado como una cadena, lo que
permite un punto decimal fijo. La cantidad máxima de dígitos se puede
especificar en el parámetro de tamaño. El número máximo de dígitos a la
derecha del punto decimal se especifica en el parámetro d.

Fechas y tiempos:

 DATE (): Una fecha. Formato: AAAA-MM-DD Nota: el rango admitido es de


'1000-01-01' a '9999-12-31'.
 DATETIME (): * Una combinación de fecha y hora. Formato: AAAA-MM-DD
HH: MI: SS Nota: el rango admitido es de '1000-01-01 00:00:00' a '9999-12-
31 23:59:59'.
 TIMESTAMP (): * Una marca de tiempo. Los valores de TIMESTAMP se
almacenan como el número de segundos desde la época de Unix ('1970-01-
01 00:00:00' UTC). Formato: AAAA-MM-DD HH: MI: SS Nota: el rango
admitido es de '1970-01-01 00:00:01' UTC a '2038-01-09 03:14:07' UTC.
 TIME (): Un tiempo. Formato: HH: MI: SS Nota: el rango admitido es de '-838:
59: 59' a '838: 59: 59'.
 YEAR (): Un año en formato de dos o cuatro dígitos. Nota: Valores permitidos
en formato de cuatro dígitos: de 1901 a 2155. Valores permitidos en formato
de dos dígitos: 70 a 69, que representan los años de 1970 a 2069.

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:

 BIT: Entero que puede ser 0, 1 o NULL.

Los comandos que se utilizan en SQL se distribuyen en cinco categorías según


las funciones que cumplen en: DDL, DML, DQL, DCL y TCL. A continuación, se
explicarán las dos categorías que engloban a los comandos que más uso reciben.
Lenguaje de definición de datos (DDL)

Es un lenguaje estandarizado proporcionado por el sistema de gestión de base


de datos que contiene las siguientes funciones básicas: crear, eliminar y modificar
la estructura de los objetos dentro la base de datos; pueden contar con funciones
extras, pero se requieren dichas funciones básicas. Dichos objetos de la base de
datos incluyen tablas, secuencias, ubicaciones, esquemas e índices. Las funciones
de DDL (por sus iniciales en inglés, Data Definition Language) también sirven para
definir los atributos de dichos objetos, como su tipo de dato, longitud de campo y el
nombre de las tablas (alias).

La función de crear, es aquella que se encarga de crear tablas que contengan


grupos específicos de información.

La función de eliminar, es un proceso selectivo y no se trata de borrar una base


de datos completa o un archivo; se debe eliminar algún tipo de información
específica sin que afecte a los demás datos.

La función de modificar, es aquella que se encarga de modificar algo dentro de


la base de datos, pero se debe realizar sin que se pierda, elimine o cree información
durante este proceso.

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

El grupo de comandos CREATE se encarga de la creación de objetos dentro de


la base de datos y hasta la misma base de datos. Los objetos a los que se hacen
referencia pueden ser tablas, vistas, procedimientos, índices. Los comandos más
usados son:

 CREATE DATABASE

De la siguiente forma se crea una base de datos:

CREATE DATABASE Aeropuerto;

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

En el siguiente ejemplo, se puede ver la creación de una tabla con este


comando:

CREATE TABLE Aviones (

ID_Avión int,

Marca varchar (100),

Color varchar (20),

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 Marca Color Vuelos Veloc_Prom

Dentro de DDL también existen comandos de restricciones que se pueden


aplicar dentro de las tablas que pueden resultar útiles para reforzar la integridad
dentro de la base de datos, algunos de estos comandos son UNIQUE, PRIMARY,
FOREIGN KEY y CHECK. Se pueden utilizar en la tabla de ejemplo así:

CREATE TABLE Aviones (

ID_Avión int,

Marca varchar (100),

Color varchar (20),

Vuelos int,

Veloc_Prom float,

PRIMARY KEY (ID_Avión)

);

Ahora la columna ID_Avión es una clave primaria.


 CREATE INDEX

A continuación, un ejemplo de la creación de un índice (index en español),


apodado “idx_color”. Los índices se utilizan para facilitar la búsqueda de algún dato,
en este caso se usará para buscar la columna “Nombre” de la tabla “Personas”.

CREATE INDEX idx_color

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:

CREATE INDEX datosnum

ON Personas (Vuelos, Veloc_Prom);

Otras sentencias del grupo CREATE incluyen: CREATE STOGROUP, CREATE


TABLESPACE, CREATE ALIAS, CREATE SYNONYM, CREATE LOCATION, CREATE
SEQUENCE, entre otros.
ALTER

La función ALTER nos permite modificar objetos dentro de la base de datos, ya


sea añadir o eliminar campos en una tabla, modificar algún campo, la configuración
de un índice, los atributos en una secuencia, entre otros. La opción más usada es:

 ALTER TABLE

En el siguiente ejemplo, se está usando la tabla “Aviones” y le añadimos una


nueva columna llamada Estado (en servicio, fuera de servicio, en construcción,
entre otros), utilizando el comando ADD.

ALTER TABLE Aviones

ADD Estado varchar (100);

Ahora, la tabla luciría así:

ID_Avión Marca Color Vuelos Veloc_Prom Estado

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

De la siguiente manera se puede eliminar una base de datos y se tiene que


especificar el nombre de la base de datos:

DROP DATABASE Aeropuerto;

Este comando hará exactamente lo contrario al comando CREATE DATABASE,


eliminará la base de datos junto con todo lo que esté asociado a ella de manera
lógica.

 DROP INDEX

Este comando lo usamos para eliminar un índice, en este ejemplo se eliminó el


index que se creó en el ejemplo de “CREATE INDEX”.
DROP INDEX datosnum

ON Aviones;

El comando no servirá si el índice fue creado los comandos de restricciones


discutidos anteriormente. En dichos casos, tendrá que quitarse esa restricción con
ALTER.

 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:

ALTER TABLE Aviones

DROP COLUMN Vuelos;

De modo que la tabla original queda así:

ID_Avión Marca Color Veloc_Prom Estado

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.

TRUNCATE TABLE Aviones;

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.

La diferencia radica en que, mientras que los comandos comprendidos en DDL


se encargan de conformar la estructura de las tablas dentro de la base de datos, los
comandos de SQL categorizados dentro del DML tienen tareas relacionadas con
consultar, insertar, eliminar y actualizar los datos que se encuentran dentro de las
tablas según la estructura ya planteada por los comandos de DDL.

Las principales sentencias dentro de la categoría de DML son SELECT, INSERT,


UPDATE y DELETE. Aunque el primero también podría considerarse parte de la
categoría DQL (Data Query Language o Lenguaje de Búsqueda 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.

SELECT puede entenderse como el equivalente a sombrear una parte de un


documento para proceder a editarlo. Si se quiere seleccionar la totalidad de una
tabla, se utiliza un asterisco (*).
Debido a que hay tantas formas de utilizar SELECT, este es un buen momento
para mostrar el uso de ciertas cláusulas adicionales:

 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í:

SELECT Estado FROM Aviones;

Esta devolvería como resultado toda la información dentro de la columna Estado


dentro de la tabla Aviones.

 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:

SELECT Estado FROM Aviones

WHERE Color = ‘Blanco’;


Ahora solo se mostrará el estado de aquellos cuyo dato en la columna Color
cumpla con la condición de ser ‘Blanco’. WHERE también puede usarse con UPDATE
y con DELETE.

 ORDER BY

Finalmente, la palabra clave ORDER BY se utiliza para, como su nombre indica,


organizar el conjunto seleccionado. El orden es ascendente por defecto, pero puede
añadirse la palabra clave DESC al final de la sentencia para ordenar de manera
descendiente.

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:

ID_Avión Marca Color Veloc_Prom Estado


1 Airbus Blanco 1200 En servicio
2 Safran Verde 610.09 En servicio
3 Leonardo Blanco 193 En servicio
4 Bombardier Gris 65217.9 Fuera de servicio
5 UAC Marrón 560 En servicio
6 Airbus Azul 521.95 En servicio
7 Leonardo Verde 190 Fuera de servicio

Con estos datos, utilizar la siguiente sentencia:

SELECT * FROM Aviones

ORDER BY Marca;
La tabla pasaría a verse así:

ID_Avión Marca Color Veloc_Prom Estado


1 Airbus Blanco 1200 En servicio
6 Airbus Azul 521.95 En servicio
4 Bombardier Gris 65217.9 Fuera de servicio
3 Leonardo Blanco 193 En servicio
7 Leonardo Verde 190 Fuera de servicio
2 Safran Verde 610.09 En servicio
5 UAC Marrón 560 En servicio

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:

SELECT * FROM Aviones

ORDER BY Marca, Veloc_Prom DESC;

Sentencia la cual dejaría a la tabla viéndose así:

ID_Avión Marca Color Veloc_Prom Estado


6 Airbus Azul 521.95 En servicio
1 Airbus Blanco 1200 En servicio
4 Bombardier Gris 65217.9 Fuera de servicio
7 Leonardo Verde 190 Fuera de servicio
3 Leonardo Blanco 193 En servicio
2 Safran Verde 610.09 En servicio
5 UAC Marrón 560 En servicio
Existe una gran cantidad de combinaciones que pueden realizarse con SELECT,
se podría, por ejemplo, combinar la cláusula WHERE con este ejemplo de ORDER BY
para mostrar únicamente aquellos aviones que se encuentren en servicio
actualmente así:

SELECT * FROM Aviones

WHERE Estado = ‘En servicio’

ORDER BY Marca, Veloc_Prom DESC;

Y finalmente, la tabla quedaría de este modo:

ID_Avión Marca Color Veloc_Prom Estado


6 Airbus Azul 521.95 En servicio
1 Airbus Blanco 1200 En servicio
3 Leonardo Blanco 193 En servicio
2 Safran Verde 610.09 En servicio
5 UAC Marrón 560 En servicio
INSERT

Una sentencia INSERT de SQL agrega uno o más registros a una (y solo una)
tabla en una base de datos relacional.

Se hace uso de la cláusula INTO para especificar la tabla donde se insertarán


los registros y la palabra clave VALUES para señalar los valores a añadir.

Las cantidades de columnas y valores deben ser iguales. Si una columna no se


especifica, le será asignado el valor por omisión. Los valores especificados (o
implícitos) por la sentencia INSERT deberán satisfacer todas las restricciones
aplicables. Si ocurre un error de sintaxis o si alguna de las restricciones es violada,
no se agrega la fila y se devuelve un error. Ejemplo:

INSERT INTO Aviones (Marca, Color, Veloc_Prom, Estado)

VALUES (‘Bonsql’, ‘Rojo’, 28, ‘En servicio’);

Cuando se especifican todos los valores de una tabla, se puede utilizar la


sentencia acortada:

INSERT INTO Aviones

VALUES (‘Claybasic’, ‘Marrón’, 14, ‘En servicio’);


Y también se pueden se pueden insertar múltiples filas a la vez con una sola
sentencia de SQL:

INSERT INTO

Aviones

VALUES

(‘Bonsql’, ‘Rojo’, 28, ‘En servicio’),

(‘Claybasic’, ‘Marrón’, 14, ‘En servicio’);

Utilizar cualquiera de los dos métodos mostrados anteriormente, tendrá lo


siguiente como resultado en la tabla:

ID_Avión Marca Color Veloc_Prom Estado


1 Airbus Blanco 1200 En servicio
2 Safran Verde 610.09 En servicio
3 Leonardo Blanco 193 En servicio
4 Bombardier Gris 65217.9 Fuera de servicio
5 UAC Marrón 560 En servicio
6 Airbus Azul 521.95 En servicio
7 Leonardo Verde 190 Fuera de servicio
8 Bonsql Rojo 28 En servicio
9 Claybasic Marrón 14 En servicio

Un INSERT también puede utilizarse para recuperar datos de otros, modificarla


si es necesario e insertarla directamente en la tabla. Todo esto se hace en una sola
sentencia SQL que no implica ningún procesamiento intermedio en la aplicación
cliente. Un SUBSELECT se utiliza en lugar de la cláusula VALUES. El SUBSELECT puede
contener la sentencia JOIN, llamadas a funciones, y puede incluso consultar en la
misma tabla los datos que se inserta. Lógicamente, el SELECT se evalúa antes que
la operación INSERT esté iniciada. Un ejemplo se da a continuación.

INSERT INTO Aviones2

SELECT *

FROM Aviones

WHERE Marca IN (‘Bonsql’, ‘Claybasic’);

Una variación es necesaria cuando algunos de los datos de la tabla fuente se


está insertando en la nueva tabla, pero no todo el registro. (O cuando los esquemas
de las tablas no son iguales).

INSERT INTO Aviones2 ([Marca], [Veloc_Prom])

SELECT [Marca], [Veloc_Prom]

FROM Aviones

WHERE Marca IN (‘Bonsql’, ‘Claybasic’);

El SELECT produce una tabla (temporal), y el esquema de la tabla temporal debe


coincidir con el esquema de la tabla donde los datos son insertados.
UPDATE

Una sentencia UPDATE de SQL es utilizada para modificar los valores de un


conjunto de registros existentes en una tabla.

UPDATE Aviones

SET Estado = ‘Fuera de Servicio’

WHERE Marca = ‘Airbus’;

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.

La tabla terminaría quedando así:

ID_Avión Marca Color Veloc_Prom Estado


1 Airbus Blanco 1200 Fuera de servicio
2 Safran Verde 610.09 En servicio
3 Leonardo Blanco 193 En servicio
4 Bombardier Gris 65217.9 Fuera de servicio
5 UAC Marrón 560 En servicio
6 Airbus Azul 521.95 Fuera de servicio
7 Leonardo Verde 190 Fuera de servicio
8 Bonsql Rojo 28 En servicio
9 Claybasic Marrón 14 En servicio
DELETE

La sentencia DELETE se usa para eliminar registros en particular de una tabla.


Es diferente de la sentencia TRUNCATE estudiada anteriormente en que la anterior
era parte de DDL y DELETE es parte de DML. Pero, más importante que eso,
TRUNCATE elimina todos los registros dentro de la tabla, mientras que el propósito
de DELETE es solo eliminar registros seleccionados, especificados por una cláusula
WHERE junto con su respectiva condición.

DELETE FROM Aviones

WHERE Marca = ‘Airbus’;

Esta cláusula WHERE es extremadamente importante, ya que, si llegara a


omitirse, todos los registros de la tabla se borrarán por siempre (en efecto, haciendo
lo mismo que truncarla).

Tras aplicar el ejemplo de DELETE mostrado, la tabla terminaría viéndose de


esta manera:

ID_Avión Marca Color Veloc_Prom Estado


2 Safran Verde 610.09 En servicio
3 Leonardo Blanco 193 En servicio
4 Bombardier Gris 65217.9 Fuera de servicio
5 UAC Marrón 560 En servicio
7 Leonardo Verde 190 Fuera de servicio
8 Bonsql Rojo 28 En servicio
9 Claybasic Marrón 14 En servicio
Bibliografía

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

5.2 Lenguaje de Definición de Datos (DDL) (uaeh.edu.mx)

¿Qué es un lenguaje de definición de datos? - Spiegato

3.- El lenguaje de definición de datos: LDD. | GBD03.- Diseño físico de bases


de datos. (birt.eus)

https://www.w3schools.com/sql/sql_create_index.asp

¿qué es truncate en base de datos? (aleph.org.mx)

Alter Table Sql: Para modificar una tabla - Sqlserverdb

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

También podría gustarte