Comandos SQL: DML, DDL, DCL, TCL, DQL con ejemplo de consulta
ยฟQuรฉ es SQL?
SQL es un lenguaje de base de datos diseรฑado para la recuperaciรณn y gestiรณn de datos en una base de datos relacional.
SQL es el lenguaje estรกndar para la gestiรณn de bases de datos. Todos los sistemas RDBMS como MySQL, Acceso MS, Oracle, Sybase, Postgres y SQL Server utilizan SQL como lenguaje de base de datos estรกndar. El lenguaje de programaciรณn SQL utiliza varios comandos para diferentes operaciones. Aprenderemos sobre comandos similares DCL, TCL, DQL, DDL y DML en SQL con ejemplos.
ยฟPor quรฉ usar SQL?
Aquรญ hay razones importantes para usar SQL.
- Ayuda a los usuarios a acceder a los datos en el sistema RDBMS.
- Le ayuda a describir los datos.
- Le permite definir los datos en una base de datos y manipular esos datos especรญficos.
- Con la ayuda de comandos SQL en DBMS, puede crear y eliminar bases de datos y tablas.
- SQL le ofrece utilizar la funciรณn en una base de datos, crear una vista y un procedimiento almacenado.
- Puede establecer permisos sobre tablas, procedimientos y vistas.
Breve historia de SQL
Aquรญ se encuentran hitos importantes de la historia de SQL:
- 1970 โ El Dr. Edgar F. โTedโ Codd describiรณ un modelo relacional para bases de datos.
- 1974 โ Apareciรณ el lenguaje de consulta estructurado.
- 1978 - IBM lanzรณ un producto llamado System/R.
- 1986 - IBM desarrollรณ el prototipo de una base de datos relacional, que estรก estandarizada por ANSI.
- 1989: Lanzamiento de la primera versiรณn de SQL.
- 1999: se lanza SQL 3 con funciones como activadores, orientaciรณn a objetos, etc.
- SQL2003: funciones de ventana, funciones relacionadas con XML, etc.
- SQL2006: soporte para lenguaje de consulta XML
- Soporte mejorado de SQL2011 para bases de datos temporales
Tipos de SQL
A continuaciรณn se presentan cinco tipos de consultas SQL ampliamente utilizadas.
- Lenguaje de definiciรณn de datos (DDL)
- Lenguaje de manipulaciรณn de datos (DML)
- Lenguaje de control de datos (DCL)
- Lenguaje de control de transacciones (TCL)
- Lenguaje de consulta de datos (DQL)

Veamos cada uno de ellos en detalle:
ยฟQuรฉ es DDL?
El lenguaje de definiciรณn de datos le ayuda a definir la estructura o esquema de la base de datos. Aprendamos sobre los comandos DDL con sintaxis.
Cinco tipos de comandos DDL en SQL son:
CREAR
Las declaraciones CREATE se utilizan para definir el esquema de estructura de la base de datos:
Sintaxis:
CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,....]);
Por ejemplo, :
Create database university; Create table students; Create view for_students;
DROP
Los comandos Drops eliminan tablas y bases de datos de RDBMS.
Sintaxis
DROP TABLE ;
Por ejemplo:
Drop object_type object_name; Drop database university; Drop table student;
ALTER
El comando Alters le permite alterar la estructura de la base de datos.
Sintaxis:
Para agregar una nueva columna en la tabla
ALTER TABLE table_name ADD column_name COLUMN-definition;
Para modificar una columna existente en la tabla:
ALTER TABLE MODIFY(COLUMN DEFINITION....);
Por ejemplo:
Alter table guru99 add subject varchar;
TRUNCAR
Este comando se utiliza para eliminar todas las filas de la tabla y liberar el espacio que contiene la tabla.
Sintaxis:
TRUNCATE TABLE table_name;
Ejemplo:
TRUNCATE table students;
ยฟQuรฉ es el lenguaje de manipulaciรณn de datos?
El lenguaje de manipulaciรณn de datos (DML) le permite modificar la instancia de la base de datos insertando, modificando y eliminando sus datos. Se encarga de realizar todo tipo de modificaciรณn de datos en una base de datos.
Hay tres construcciones bรกsicas que permiten al programa de base de datos y al usuario ingresar datos e informaciรณn:
Aquรญ hay algunos comandos DML importantes en SQL:
- INSERT
- ACTUALIZAR
- BORRAR
INSERT
Esta es una declaraciรณn es una consulta SQL. Este comando se utiliza para insertar datos en la fila de una tabla.
Sintaxis:
INSERT INTO TABLE_NAME (col1, col2, col3,.... col N) VALUES (value1, value2, value3, .... valueN); Or INSERT INTO TABLE_NAME VALUES (value1, value2, value3, .... valueN);
Por ejemplo:
INSERT INTO students (RollNo, FIrstName, LastName) VALUES ('60', 'Tom', Erichsen');
ACTUALIZAR
Este comando se utiliza para actualizar o modificar el valor de una columna de la tabla.
Sintaxis:
UPDATE table_name SET [column_name1= value1,...column_nameN = valueN] [WHERE CONDITION]
Por ejemplo:
UPDATE students SET FirstName = 'Jhon', LastName= 'Wick' WHERE StudID = 3;
BORRAR
Este comando se utiliza para eliminar una o mรกs filas de una tabla.
Sintaxis:
DELETE FROM table_name [WHERE condition];
Por ejemplo:
DELETE FROM students WHERE FirstName = 'Jhon';
ยฟQuรฉ es DCL?
DCL (lenguaje de control de datos) incluye comandos como GRANT y REVOKE, que son รบtiles para otorgar "derechos y permisos". Otros parรกmetros de control de permisos del sistema de base de datos.
Ejemplos de comandos DCL
Comandos que vienen bajo DCL:
- Grant
- Revbien
Grant
Este comando se utiliza para otorgar privilegios de acceso al usuario a una base de datos.
Sintaxis:
GRANT SELECT, UPDATE ON MY_TABLE TO SOME_USER, ANOTHER_USER;
Por ejemplo:
GRANT SELECT ON Users TO'Tom'@'localhost;
Revbien
Es รบtil respaldar los permisos del usuario.
Sintaxis:
REVOKE privilege_nameON object_nameFROM {user_name |PUBLIC |role_name}
Por ejemplo:
REVOKE SELECT, UPDATE ON student FROM BCA, MCA;
ยฟQuรฉ es TCL?
El lenguaje de control de transacciones o los comandos TCL se ocupan de la transacciรณn dentro de la base de datos.
COMPROMรTASE
Este comando se utiliza para guardar todas las transacciones en la base de datos.
Sintaxis:
Commit;
Por ejemplo:
DELETE FROM Students WHERE RollNo =25; COMMIT;
Rollback
El comando Rollback le permite deshacer transacciones que aรบn no se han guardado en la base de datos.
Sintaxis:
ROLLBACK;
Ejemplo:
DELETE FROM Students WHERE RollNo =25;
PUNTO DE GUARDADO
Este comando le ayuda a establecer un punto de guardado dentro de una transacciรณn.
Sintaxis:
SAVEPOINT SAVEPOINT_NAME;
Ejemplo:
SAVEPOINT RollNo;
ยฟQuรฉ es DQL?
El lenguaje de consulta de datos (DQL) se utiliza para recuperar los datos de la base de datos. Utiliza solo un comando:
SELECT
Este comando le ayuda a seleccionar el atributo segรบn la condiciรณn descrita por la clรกusula WHERE.
Sintaxis:
SELECT expressions FROM TABLES WHERE conditions;
Por ejemplo:
SELECT FirstName FROM Student WHERE RollNo > 15;
Resumen
- SQL es un lenguaje de base de datos diseรฑado para la recuperaciรณn y gestiรณn de datos en una base de datos relacional.
- Ayuda a los usuarios a acceder a datos en el sistema RDBMS.
- En el aรฑo 1974 apareciรณ el tรฉrmino Lenguaje de Consulta Estructurado.
- Cinco tipos de consultas SQL son 1) Lenguaje de definiciรณn de datos (DDL), 2) Lenguaje de manipulaciรณn de datos (DML), 3) Lenguaje de control de datos (DCL), 4) Lenguaje de control de transacciones (TCL) y 5) Lenguaje de consulta de datos (DQL).
- El lenguaje de definiciรณn de datos (DDL) le ayuda a definir la estructura o esquema de la base de datos.
- El lenguaje de manipulaciรณn de datos (DML) le permite modificar la instancia de la base de datos insertando, modificando y eliminando sus datos.
- DCL (lenguaje de control de datos) incluye comandos como GRANT y REVOKE, que son รบtiles para otorgar "derechos y permisos".
- El lenguaje de control de transacciones o los comandos TCL se ocupan de la transacciรณn dentro de la base de datos.
- El lenguaje de consulta de datos (DQL) se utiliza para recuperar los datos del base de datos de CRISPR Medicine News.
