SQL

Lenguajes de bases de datos: qué lenguaje se usa para consultar datos

Para consultar una base de datos relacional se usa SQL, el lenguaje estructurado de consulta. En clase, sus órdenes se reparten en cinco tipos —estructura, cambios, lectura, permisos y transacciones—, aunque cada fabricante las ordena distinto. Aquí verá qué hace cada tipo, sus comandos y qué lenguajes de consulta existen fuera de SQL.

Por Jhon Mosquera3 nov 202612 min de lectura

Última actualización: 2026-11-03

Contenido de esta página

Caso real, tomado de Search Console, la herramienta de Google que muestra con qué búsquedas aparece un sitio. Alguien escribió, palabra por palabra: «qué tipo de lenguaje permite controlar el acceso a los datos de la base de datos». Otra persona buscó «qué tipo de lenguaje permite especificar el esquema de la base de datos y expresar consultas y modificaciones». Con las dos, Google mostró entre sus resultados la versión anterior de esta página.

Suenan a preguntas de examen copiadas tal cual. La respuesta de apunte de clase para la primera es «el lenguaje de control de datos». El problema es que los manuales oficiales no se ponen de acuerdo en eso.

Oracle, uno de los grandes fabricantes de gestores de bases de datos, mete las órdenes de dar y quitar permisos en el mismo grupo que crear tablas [1]. El manual de MySQL las archiva entre las sentencias de administración, bajo la gestión de cuentas [2]. Y la documentación de OpenEdge, la plataforma de la empresa Progress, llama control de datos a un grupo que incluye, además, las órdenes de confirmar y deshacer cambios [3].

Así que la pregunta del examen tiene trampa. Las dos búsquedas tienen, en el fondo, una sola respuesta: SQL. Un lenguaje de base de datos es el idioma con el que se le dan órdenes a una base de datos, y para las relacionales ese idioma es SQL. Las «familias» que piden los exámenes son una forma de ordenar esas órdenes: útil para estudiar, pero no universal.

Cabina de interpretación simultánea vacía, con dos consolas y audífonos frente a una sala de conferencias.

¿Qué lenguaje se utiliza para consultar una base de datos relacional?

Para consultar una base de datos relacional, la que guarda la información en tablas conectadas entre sí, se usa SQL, sigla en inglés de lenguaje estructurado de consulta. El mismo idioma sirve para crear las tablas, cambiar sus filas, repartir permisos y confirmar cambios. Cada gestor, que es el programa que administra la base, lo habla con su propio acento.

Lo define una norma internacional que publican la ISO y la IEC, dos organismos que fijan normas técnicas en todo el mundo. Su nombre formal es ISO/IEC 9075, «Database Language SQL» [4]. La norma no viene en un solo libro: está dividida en partes, desde un marco general y unos fundamentos hasta piezas para módulos almacenados, datos externos o consultas sobre grafos [4].

La parte de fundamentos, la que define el núcleo del lenguaje, va en su sexta edición, publicada en junio de 2023 [5]. Es un documento de pago que la ISO vende en su catálogo [5]. Por eso esta página no le atribuye a la norma la clasificación en cinco familias. La toma de donde sí se puede leer gratis: los manuales oficiales de cada fabricante.

Qué es SQL, de dónde viene y cómo resuelve una consulta por dentro está explicado en la guía de SQL. Aquí el tema es otro: cómo se agrupan sus órdenes y qué lenguajes viven a su alrededor.

Tipos de comandos SQL: DDL, DML, DQL, DCL y TCL

Según lo que logra cada orden, el SQL se organiza en cinco grupos. El DDL (lenguaje de definición de datos) crea y cambia la estructura. El DML (lenguaje de manipulación de datos) agrega, cambia o borra filas. El DQL (lenguaje de consulta de datos) solo lee. El DCL (lenguaje de control de datos) da o quita permisos. El TCL (lenguaje de control de transacciones) confirma o deshace grupos de cambios.

Esas cinco abreviaturas, tomadas del inglés, son el vocabulario de los parciales y de muchas vacantes de analista. Como mapa de estudio funcionan. Pero ninguna documentación oficial de las que consulté usa las cinco a la vez, y cada fabricante reparte las órdenes a su manera:

Documentación oficialCómo agrupa las sentenciasDónde quedan GRANT y REVOKE (dar y quitar permisos)Dónde queda SELECT (consultar)
Oracle AI Database, versión 26Definición (DDL), manipulación (DML), control de transacciones, control de sesión, control de sistema y SQL incrustado [1]Dentro del DDL [1]Dentro del DML [1]
SQL Server (Microsoft)Copias de seguridad, definición (DDL), manipulación (DML), permisos, mensajería y ajustes de sesión [6]En un grupo propio de sentencias de permisos [6]Dentro del DML [6]
MySQL 8.4Definición de datos, manipulación de datos, transacciones y bloqueos, administración de la base de datos y otras [2]En administración, bajo gestión de cuentas [2]Dentro de manipulación de datos [2]
PostgreSQL 18Su referencia de órdenes va en orden alfabético, sin familias [7]Cada una con su ficha: GRANT define privilegios de acceso [7]En un capítulo de consultas, aparte del de manipulación [8] [9]

Lo que se repite en los cuatro manuales es la pareja definición y manipulación: en Oracle, Microsoft y MySQL como grupos de sentencias, y en PostgreSQL como capítulos separados de su guía [8]. Lo demás se mueve. Los permisos son el caso más claro: cambian de grupo según el fabricante.

DQL: ¿SELECT es lenguaje de consulta o de manipulación?

Depende del manual. Oracle, Microsoft y MySQL cuentan SELECT, la orden de consulta, dentro del lenguaje de manipulación de datos [1] [6] [2]. PostgreSQL, en cambio, le dedica a recuperar datos un capítulo distinto del que trata insertar, actualizar y borrar filas [8] [9]. La sigla DQL nace de esa segunda mirada: separar lo que lee de lo que modifica.

Oracle matiza su propia regla. Describe SELECT como una forma limitada de manipulación, porque solo accede a los datos y no puede cambiar lo que está guardado, aunque sí transformar lo que devuelve [1].

En un examen, la respuesta segura es dar las dos lecturas: SELECT es DQL en la clasificación didáctica y DML en la documentación de Oracle, Microsoft y MySQL.

Tabla de comandos SQL por familia

Cada familia agrupa pocas órdenes, y casi todas se reconocen por el verbo en inglés: crear, alterar, insertar, actualizar, conceder, confirmar. La tabla reúne las más comunes con un ejemplo de una línea. Los comandos salen de las listas oficiales de Microsoft y de PostgreSQL [6] [7].

FamiliaQué haceComandosEjemplo de una línea
DDL · definición de datosCrea, cambia o borra la estructura: tablas, índices, vistasCREATE, ALTER, DROP, TRUNCATE TABLE (vaciar una tabla completa) [6]ALTER TABLE entregas ADD COLUMN fecha TEXT;
DML · manipulación de datosAgrega, cambia o borra filasINSERT, UPDATE, DELETE, MERGE (combinar con otra tabla: inserta, actualiza o borra según las filas coincidan) [6]UPDATE entregas SET recibida = 1 WHERE id = 2;
DQL · consulta de datosLee filas sin cambiarlasSELECT [7]SELECT especie FROM entregas WHERE recibida = 0;
DCL · control de accesoDa o quita permisos y crea rolesGRANT, REVOKE, CREATE ROLE [7]GRANT INSERT ON films TO PUBLIC;
TCL · control de transaccionesConfirma o deshace un grupo de cambiosBEGIN, COMMIT, ROLLBACK, SAVEPOINT [7]ROLLBACK;

El bloque que sigue usa la tabla de entregas de un vivero municipal que reparte plántulas (árboles pequeños listos para sembrar) a las veredas, con datos inventados. Está escrito para SQLite 3, el motor que cabe en un solo archivo; la versión vigente al cierre de esta página es la 3.54.1 [10]. Las mismas órdenes figuran en la referencia de PostgreSQL 18 [7].

-- SQLite 3. Entregas de un vivero municipal (datos inventados).

-- DDL: crear la tabla y agregarle una columna
CREATE TABLE entregas (
  id       INTEGER PRIMARY KEY,
  especie  TEXT NOT NULL,
  vereda   TEXT NOT NULL,      -- código de la vereda, no el nombre
  recibida INTEGER DEFAULT 0   -- 0 = en camino, 1 = recibida
);
ALTER TABLE entregas ADD COLUMN fecha TEXT;

-- DML: registrar dos despachos y una recepción
INSERT INTO entregas (id, especie, vereda, fecha) VALUES (1, 'Guayacán', 'V-014', '2026-11-03');
INSERT INTO entregas (id, especie, vereda, fecha) VALUES (2, 'Nogal cafetero', 'V-027', '2026-11-03');
UPDATE entregas SET recibida = 1 WHERE id = 2;

-- DQL: ¿qué plántulas siguen en camino?
SELECT especie, vereda FROM entregas WHERE recibida = 0;

La consulta final devuelve una sola fila: el guayacán que va para la vereda V-014. El nogal cafetero no sale porque ya figura como recibido.

La sintaxis completa de crear tablas y de insertar, actualizar o borrar filas es materia aparte, con sus propias reglas y trampas. Aquí basta con el mapa.

DCL: GRANT, REVOKE, roles y permisos

El DCL, o lenguaje de control de datos, es la parte de SQL que decide quién puede hacer qué dentro de una base. Sus dos órdenes centrales son GRANT, que concede un permiso, y REVOKE, que lo retira. En gestores como PostgreSQL, los permisos se asignan a roles: identidades que representan a una persona o a un grupo de personas.

PostgreSQL lo organiza así. Un rol puede funcionar como un usuario o como un grupo de usuarios, según cómo se configure [11]. Los roles pueden ser dueños de tablas y conceder privilegios sobre ellas a otros roles [11].

Microsoft resume el propósito de esta familia en su referencia de Transact-SQL: «las sentencias de permisos determinan qué usuarios e inicios de sesión pueden acceder a los datos y realizar operaciones» [6].

No todos los motores tienen esta familia. SQLite no implementa GRANT ni REVOKE. Su base es un archivo corriente del disco, así que quien controla el acceso es el sistema operativo, con los mismos permisos de lectura y escritura que tendría cualquier otro archivo [12]. Por eso los ejemplos que siguen son de PostgreSQL 18, copiados de su documentación oficial [13] [14] [15]:

-- PostgreSQL 18. Ejemplos tomados literalmente de su documentación oficial.
-- SQLite no tiene estas órdenes.
CREATE ROLE jonathan LOGIN;           -- crea un rol que puede iniciar sesión
GRANT INSERT ON films TO PUBLIC;      -- todos pueden insertar filas en films
REVOKE INSERT ON films FROM PUBLIC;   -- se les retira ese permiso
GRANT admins TO joe;                  -- joe pasa a ser miembro del rol admins

La última línea muestra la idea de fondo de los roles. A joe no se le dan permisos uno por uno: se le hace miembro de un grupo que ya los tiene [13].

TCL: COMMIT, ROLLBACK y SAVEPOINT

El TCL, o lenguaje de control de transacciones, agrupa las órdenes que abren, confirman o deshacen una transacción. Una transacción es un paquete de cambios que se cumple completo o no se cumple. COMMIT confirma el paquete, ROLLBACK lo deshace entero y SAVEPOINT marca un punto intermedio al que se puede regresar.

La documentación de PostgreSQL lo explica con un pago entre dos cuentas bancarias. La transacción junta varios pasos en una sola operación de todo o nada; si algo falla a mitad de camino, ninguno de los pasos afecta la base [16]. Microsoft lo dice en una línea: una transacción es una sola unidad de trabajo [17].

En SQLite no hay lectura ni escritura fuera de una transacción. Si nadie abrió una, cualquier orden que toque la base abre la suya y la confirma al terminar [18]. Con BEGIN, quien escribe decide dónde empieza y dónde acaba el paquete [18].

El punto intermedio sirve para deshacer solo una parte. En SQLite, ROLLBACK TO devuelve la base al estado que tenía justo después del SAVEPOINT correspondiente, sin cancelar la transacción [19]:

-- SQLite 3. TCL sobre la misma tabla de entregas.
BEGIN;
UPDATE entregas SET recibida = 1 WHERE id = 1;    -- llegó el guayacán
SAVEPOINT antes_de_borrar;                        -- punto de regreso
DELETE FROM entregas WHERE id = 2;                -- borrado por error
ROLLBACK TO antes_de_borrar;                      -- deshace solo el borrado
COMMIT;                                           -- confirma la recepción

SELECT id, recibida FROM entregas;

Al final, las dos entregas siguen en la tabla y las dos figuran como recibidas. El borrado se deshizo; la recepción quedó guardada.

PL/SQL vs T-SQL vs PL/pgSQL: ¿qué es un dialecto procedimental?

Un dialecto procedimental es una extensión de SQL que agrega lo que la consulta sola no trae: variables, condiciones, ciclos y manejo de errores. Con él se escriben funciones y procedimientos que corren dentro del propio gestor. Cada fabricante tiene el suyo; la tabla compara tres: PL/SQL en Oracle, Transact-SQL en Microsoft y PL/pgSQL en PostgreSQL.

DialectoGestorQué agrega a SQL, según su documentación
PL/SQLOracle AI Database, versión 26Oracle lo llama su extensión procedimental de SQL; une el poder de SQL para manejar datos con el procesamiento de los lenguajes procedimentales [20]
Transact-SQL (T-SQL)SQL Server y servicios Azure SQLEs la versión de SQL de Microsoft [21]; trae dentro sus palabras de control de flujo, como IF…ELSE, WHILE y TRY…CATCH [22]
PL/pgSQLPostgreSQL 18Lenguaje procedimental que se carga en el gestor para crear funciones, procedimientos y disparadores (rutinas que se ejecutan solas cuando cambian los datos), y que agrega estructuras de control a SQL [23]

La tabla esconde una diferencia de diseño. PL/SQL y PL/pgSQL son lenguajes que conviven con el SQL de su gestor. Microsoft, en cambio, presenta sus palabras de control de flujo como parte del propio Transact-SQL [22].

Lenguajes de consulta que no son SQL: MDX, Cypher, GQL, SPARQL y GraphQL

Fuera de las tablas hay otros lenguajes de consulta, cada uno hecho para una forma distinta de guardar datos: cubos de análisis, grafos de nodos y relaciones, datos enlazados de la web o documentos. Ninguno reemplaza a SQL dentro de una base relacional. Y GraphQL, pese al nombre, no es un lenguaje de bases de datos: consulta las interfaces de las aplicaciones.

LenguajeQué consultaQuién lo defineContraste con SQL
MDX (expresiones multidimensionales)Cubos: datos resumidos por varias dimensiones a la vezMicrosoft, para SQL Server Analysis Services [24]Devuelve celdas de un cubo, no filas de una tabla [24]
CypherGrafos de propiedades: nodos unidos por relacionesNeo4j; su manual vigente cubre Cypher 25 [25]Es declarativo, como SQL, pero recorre nodos y relaciones en vez de tablas [25]
GQLGrafos de propiedadesNorma internacional ISO/IEC 39075, publicada en abril de 2024 [27]Adoptó buena parte de la forma de las consultas de Cypher, según Neo4j [26]
SPARQLDatos RDF, un formato de la web que enlaza información en forma de grafoW3C, el consorcio de estándares de la web [28]Consulta un grafo dirigido y etiquetado, no tablas [28]
API de consultas de MongoDBDocumentosMongoDB [29]Combina operaciones de crear, leer, actualizar y borrar con canales de agregación (cadenas de pasos que filtran, agrupan y resumen documentos) [29]
GraphQLLa interfaz de programación (API) de una aplicaciónEspecificación GraphQL, edición de septiembre de 2025 [30]No exige ningún sistema de almacenamiento en particular [30]

SQL tampoco se quedó quieto frente a los grafos. La parte 16 de la norma, SQL/PGQ, trata las consultas sobre grafos de propiedades desde el propio SQL [4]. Según su documentación, PostgreSQL todavía no tiene implementación de esa parte [4].

Qué son las bases de datos que no usan tablas relacionales, y cuándo convienen, está explicado en la guía de bases de datos NoSQL.

¿Qué lenguajes de programación se usan para bases de datos?

Para darle órdenes a una base relacional, el lenguaje sigue siendo SQL o el dialecto de su gestor. Los lenguajes de programación de uso general, como Python, entran por otra puerta. El programa arma la orden en SQL y se la envía al gestor a través de un conector, una pieza de software que hace de puente entre los dos. No compiten con SQL; lo transportan.

La documentación de SQL Server, el gestor de Microsoft, lo deja por escrito. Sea una herramienta de administración o una aplicación hecha a la medida, al servidor solo le llegan órdenes en Transact-SQL [21].

Python es un buen ejemplo. Su biblioteca estándar suele traer el módulo sqlite3, una interfaz para hablarle a SQLite que la documentación presenta como opcional [31]. Ese módulo sigue la especificación DB-API 2.0, el acuerdo de Python sobre cómo deben comportarse los conectores de bases de datos [31]. El programa en Python decide qué preguntar; la pregunta viaja escrita en SQL.

Qué hace Python cuando los datos ya salieron de la base es otro oficio, el del análisis, y está en la guía de Python para el análisis de datos. Qué lenguajes piden los empleos del área lo reúne la guía de rutas y carreras en datos.

¿Hace falta memorizar las cinco siglas?

Para el examen, sí. Para el trabajo, importan menos de lo que parece.

Aquí tomo partido, aunque no hay manual que lo zanje: aprenda primero los verbos y después las siglas. Quien sabe para qué sirven GRANT, COMMIT o ALTER puede ubicarlos en cualquier clasificación, la del profesor o la de Oracle. Quien solo memorizó «DCL» se queda sin respuesta cuando el manual de su gestor la pone en otra parte.

Hay además una cuestión de acceso. El texto de la norma es de pago [5]. Los manuales de PostgreSQL, SQLite, MySQL, Oracle y Microsoft se leen gratis en línea. Para un estudiante de una universidad regional en Colombia, la referencia real no es el estándar sino esos manuales.

Si mañana le preguntan qué lenguaje controla el acceso a los datos, escriba DCL. Y agregue GRANT y REVOKE, que es lo que va a teclear el día en que alguien le pida un permiso de solo lectura.

Preguntas frecuentes

¿Qué lenguaje se usa para extraer datos de una base de SQL Server? Transact-SQL, la versión de SQL que habla el gestor de Microsoft. La orden concreta para extraer filas es SELECT, que Microsoft incluye entre sus sentencias de manipulación de datos [6]. Las herramientas de la propia Microsoft, como SQL Server Management Studio o sqlcmd, también trabajan emitiendo órdenes en ese lenguaje [21].

¿Qué tipo de lenguaje permite definir el esquema de una base de datos y expresar consultas y modificaciones? SQL cubre las tres tareas con familias distintas. El esquema, es decir, la estructura de tablas y columnas, se define con órdenes de definición como CREATE y ALTER. Las consultas usan SELECT y las modificaciones, INSERT, UPDATE y DELETE [6] [7].

¿COMMIT y ROLLBACK son DCL o TCL? En la clasificación didáctica de cinco familias son TCL, control de transacciones, y Oracle las ubica en ese mismo grupo [1]. Pero la documentación de SQL de OpenEdge, de Progress, las incluye en su lenguaje de control de datos, junto con GRANT y REVOKE [3]. Si la pregunta es de examen, conviene responder con la clasificación del curso.

¿TRUNCATE es DDL o DML? Microsoft pone TRUNCATE TABLE entre las sentencias de definición de datos, al lado de CREATE, ALTER y DROP [6]. Aunque su efecto es vaciar la tabla, queda en el grupo de las órdenes que trabajan sobre la estructura y no en el de DELETE.

¿GraphQL es un lenguaje de bases de datos? No. Su especificación lo presenta como un lenguaje de consulta para construir aplicaciones cliente y aclara que no es un lenguaje de programación capaz de cualquier cálculo [30]. Detrás de una interfaz GraphQL puede haber una base relacional, otra de documentos o ninguna.

Referencias

Las citas en otro idioma son traducción propia.

  1. Oracle. SQL Language Reference, sección «Types of SQL Statements» (documentación de Oracle AI Database, versión 26) — seis categorías: definición (DDL), manipulación (DML), control de transacciones, control de sesión, control de sistema y SQL incrustado; el DDL permite, entre otras tareas, conceder y revocar privilegios y roles; SELECT es «a limited form of DML statement in that it can only access data in the database», que no puede manipular los datos guardados aunque sí los datos a los que accede antes de devolverlos; control de transacciones: COMMIT, ROLLBACK, SAVEPOINT, SET TRANSACTION y SET CONSTRAINT. Oracle: SQL Language Reference, Types of SQL Statements — Consultada: 2026-11-03.
  2. Oracle (MySQL). MySQL 8.4 Reference Manual, capítulo 15 «SQL Statements» — secciones 15.1 Data Definition Statements, 15.2 Data Manipulation Statements (incluye 15.2.13 SELECT Statement), 15.3 Transactional and Locking Statements (START TRANSACTION, COMMIT, ROLLBACK, SAVEPOINT) y 15.7 Database Administration Statements, con 15.7.1 Account Management Statements (GRANT, REVOKE, CREATE ROLE). MySQL: Reference Manual 8.4, SQL Statements — Consultada: 2026-11-03.
  3. Progress Software. OpenEdge Data Management: SQL Development, página «Data control language and security» (actualizada el 11 de febrero de 2026) — el DCL de OpenEdge SQL da seguridad a la base de datos y consta de las sentencias GRANT, REVOKE, COMMIT y ROLLBACK; GRANT y REVOKE determinan si un usuario puede ver, modificar, agregar o borrar información. Progress: OpenEdge SQL Development, Data control language — Consultada: 2026-11-03.
  4. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, apéndice D «SQL Conformance» — nombre formal de la norma, ISO/IEC 9075 «Database Language SQL»; lista de sus partes, de la 1 (Framework) y la 2 (Foundation) a la 16 (Property Graph Queries, SQL/PGQ), con la 4 (Persistent Stored Modules) y la 9 (Management of External Data); «There are currently no implementations of parts 4, 10, 15, and 16 for PostgreSQL». PostgreSQL: Documentation 18, SQL Conformance — Consultada: 2026-11-03.
  5. Organización Internacional de Normalización (ISO). ISO/IEC 9075-2:2023 Information technology — Database languages SQL — Part 2: Foundation (SQL/Foundation) (ficha del catálogo) — edición 6, publicada en junio de 2023, 1.715 páginas; documento a la venta en PDF o papel; etapa 90.92, norma por revisar, desde el 22 de junio de 2025. ISO: ficha de ISO/IEC 9075-2:2023 — Consultada: 2026-11-03.
  6. Microsoft. Transact-SQL statements, Microsoft Learn (artículo fechado el 17 de abril de 2020, actualizado el 21 de septiembre de 2026) — categorías de sentencias: copias de seguridad y restauración, Data Definition Language (ALTER, CREATE, DROP, TRUNCATE TABLE, entre otras), Data Manipulation Language (BULK INSERT, DELETE, INSERT, SELECT, UPDATE, MERGE), Permissions statements, Service Broker y Session settings; «Permissions statements determine which users and logins can access data and perform operations». Microsoft Learn: Transact-SQL statements — Consultada: 2026-11-03.
  7. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation (versión 18.6), «SQL Commands» — referencia de las órdenes en orden alfabético, de ABORT a VALUES; BEGIN, «start a transaction block»; COMMIT; ROLLBACK; SAVEPOINT; GRANT, «define access privileges»; REVOKE, «remove access privileges»; CREATE ROLE, «define a new database role»; SELECT, «retrieve rows from a table or view». PostgreSQL: Documentation 18, SQL Commands — Consultada: 2026-11-03.
  8. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, capítulo 6 «Data Manipulation» — cubre cómo insertar, actualizar y borrar datos de las tablas, y anuncia que el capítulo siguiente explica cómo extraerlos. PostgreSQL: Documentation 18, Data Manipulation — Consultada: 2026-11-03.
  9. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, capítulo 7 «Queries» — tras explicar cómo crear tablas, llenarlas y manipular los datos, el capítulo trata cómo recuperar los datos de la base. PostgreSQL: Documentation 18, Queries — Consultada: 2026-11-03.
  10. SQLite. SQLite Home Page — última versión publicada: 3.54.1, del 16 de octubre de 2026. SQLite: página principal — Consultada: 2026-11-03.
  11. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, capítulo 21 «Database Roles» — PostgreSQL maneja los permisos de acceso con el concepto de roles; un rol puede verse como un usuario o un grupo de usuarios, según cómo se configure; los roles pueden ser dueños de objetos y asignar privilegios sobre ellos a otros roles. PostgreSQL: Documentation 18, Database Roles — Consultada: 2026-11-03.
  12. SQLite. SQL Features That SQLite Does Not Implement (página actualizada el 18 de abril de 2022) — GRANT y REVOKE no están implementados; como SQLite lee y escribe un archivo común, los únicos permisos aplicables son los del sistema operativo. SQLite: SQL Features That SQLite Does Not Implement — Consultada: 2026-11-03.
  13. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, referencia de la orden GRANT — dos variantes: conceder privilegios sobre un objeto y conceder membresía en un rol; ejemplos «GRANT INSERT ON films TO PUBLIC;» y «GRANT admins TO joe;». PostgreSQL: Documentation 18, GRANT — Consultada: 2026-11-03.
  14. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, referencia de la orden REVOKE — ejemplo «REVOKE INSERT ON films FROM PUBLIC;». PostgreSQL: Documentation 18, REVOKE — Consultada: 2026-11-03.
  15. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, referencia de la orden CREATE ROLE — agrega un rol nuevo a un clúster de PostgreSQL; ejemplo «CREATE ROLE jonathan LOGIN;», un rol que puede iniciar sesión. PostgreSQL: Documentation 18, CREATE ROLE — Consultada: 2026-11-03.
  16. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, tutorial, sección 3.4 «Transactions» — la transacción agrupa varios pasos en una sola operación de todo o nada; si una falla impide completarla, ninguno de los pasos afecta la base; ejemplo de un pago entre dos cuentas; BEGIN y COMMIT delimitan la transacción, ROLLBACK la cancela y SAVEPOINT permite descartar solo una parte. PostgreSQL: Documentation 18, Transactions — Consultada: 2026-11-03.
  17. Microsoft. Transactions (Transact-SQL), Microsoft Learn (artículo fechado el 30 de octubre de 2025) — «A transaction is a single unit of work»; modos de transacción de SQL Server; sentencias BEGIN TRANSACTION, COMMIT TRANSACTION, ROLLBACK TRANSACTION y SAVE TRANSACTION, entre otras. Microsoft Learn: Transactions (Transact-SQL) — Consultada: 2026-11-03.
  18. SQLite. Transaction (página actualizada el 18 de febrero de 2026) — no hay lecturas ni escrituras fuera de una transacción; cualquier orden que accede a la base abre una automáticamente si no hay otra en curso y la confirma al terminar la última sentencia; las transacciones manuales empiezan con BEGIN y suelen durar hasta el siguiente COMMIT o ROLLBACK. SQLite: Transaction — Consultada: 2026-11-03.
  19. SQLite. Savepoints — SAVEPOINT abre una transacción con nombre; ROLLBACK TO devuelve la base al estado que tenía justo después del SAVEPOINT correspondiente y, a diferencia de ROLLBACK sin TO, no cancela la transacción; RELEASE funciona como un COMMIT del punto intermedio. SQLite: Savepoints — Consultada: 2026-11-03.
  20. Oracle. PL/SQL Language Reference, secciones «Main Features of PL/SQL» y «Overview of PL/SQL» (documentación de Oracle AI Database, versión 26) — «PL/SQL combines the data-manipulating power of SQL with the processing power of procedural languages» (Main Features); PL/SQL es la extensión procedimental de SQL de Oracle (Overview). Oracle: PL/SQL Language Reference, Main Features of PL/SQL · Oracle: PL/SQL Language Reference, Overview — Consultada: 2026-11-03.
  21. Microsoft. Transact-SQL Reference (Database Engine), Microsoft Learn (artículo fechado el 26 de enero de 2026) — T-SQL es central para los productos y servicios SQL de Microsoft; todas las herramientas y aplicaciones que se comunican con una base de SQL Server lo hacen enviando comandos T-SQL; aplica a SQL Server y a los servicios Azure SQL. Microsoft Learn: Transact-SQL Reference — Consultada: 2026-11-03.
  22. Microsoft. Control-of-Flow, Microsoft Learn — palabras clave del lenguaje de control de flujo de Transact-SQL: BEGIN…END, BREAK, CONTINUE, GOTO, IF…ELSE, RETURN, THROW, TRY…CATCH, WAITFOR y WHILE. Microsoft Learn: Control-of-Flow — Consultada: 2026-11-03.
  23. The PostgreSQL Global Development Group. PostgreSQL 18 Documentation, sección 41.1 «Overview» de PL/pgSQL — lenguaje procedimental cargable para PostgreSQL, diseñado para crear funciones, procedimientos y disparadores y para agregar estructuras de control al lenguaje SQL. PostgreSQL: Documentation 18, PL/pgSQL Overview — Consultada: 2026-11-03.
  24. Microsoft. MDX Query Fundamentals (Analysis Services), Microsoft Learn — Multidimensional Expressions (MDX) permite consultar objetos multidimensionales, como los cubos, y devuelve conjuntos de celdas con los datos del cubo; aplica a SQL Server Analysis Services. Microsoft Learn: MDX Query Fundamentals — Consultada: 2026-11-03.
  25. Neo4j. Cypher Manual, «Introduction» — Cypher es el lenguaje de consulta declarativo de Neo4j para bases de datos de grafos de propiedades; el manual cubre Cypher 25. Neo4j: Cypher Manual, Introduction — Consultada: 2026-11-03.
  26. Neo4j. Cypher Manual, apéndice «GQL conformance» — GQL es el nuevo lenguaje de consulta de norma internacional ISO para bases de datos de grafos; adoptó buena parte de la semántica de construcción de consultas de Cypher, como el formato MATCH/RETURN; Cypher admite la mayoría de las funciones obligatorias de GQL. Neo4j: Cypher Manual, GQL conformance — Consultada: 2026-11-03.
  27. Organización Internacional de Normalización (ISO). ISO/IEC 39075:2024 Information technology — Database languages — GQL (ficha del catálogo) — edición 1, publicada en abril de 2024, 610 páginas, comité ISO/IEC JTC 1/SC 32; define estructuras de datos y operaciones básicas sobre grafos de propiedades. ISO: ficha de ISO/IEC 39075:2024 — Consultada: 2026-11-03.
  28. W3C. SPARQL 1.1 Query Language, recomendación del 21 de marzo de 2013 — RDF es un formato de datos en forma de grafo dirigido y etiquetado para representar información en la web; la especificación define la sintaxis y la semántica del lenguaje de consulta SPARQL para RDF. W3C: SPARQL 1.1 Query Language — Consultada: 2026-11-03.
  29. MongoDB. MongoDB Query API, manual de MongoDB — la API de consultas es el mecanismo para interactuar con los datos y comprende dos vías: operaciones CRUD (crear, leer, actualizar y borrar) y canales de agregación. MongoDB: Query API — Consultada: 2026-11-03.
  30. GraphQL. GraphQL Specification, edición de septiembre de 2025 — GraphQL es un lenguaje de consulta diseñado para construir aplicaciones cliente; no es un lenguaje de programación capaz de cómputo arbitrario; no exige un lenguaje de programación ni un sistema de almacenamiento en particular a los servicios que lo implementan. GraphQL: Specification, September 2025 — Consultada: 2026-11-03.
  31. Python Software Foundation. sqlite3 — DB-API 2.0 interface for SQLite databases, documentación de la biblioteca estándar de Python 3 — el módulo sqlite3 ofrece una interfaz SQL conforme a la especificación DB-API 2.0 descrita en el PEP 249 y requiere la biblioteca SQLite; la documentación lo señala como módulo opcional. Python: documentación del módulo sqlite3 — Consultada: 2026-11-03.
Cómo investigamos esta página
  • Pregunta que responde: Qué lenguaje se usa para hablarle a una base de datos, cómo se agrupan sus órdenes y qué lenguajes de consulta existen fuera de SQL.
  • Fuentes: identificadas 52 → incluidas 31
  • Criterios de inclusión: documentación oficial de cada fabricante, normas de la ISO y del W3C y especificaciones oficiales; sin blogs, cursos ni enciclopedias.
  • Fecha de corte de los datos: 2026-11-03
Scroll to Top