SQL
Test de SQL: tablas y datos
Resuelve 50 casos de PostgreSQL sobre CREATE TABLE, restricciones, tipos, INSERT, UPDATE, DELETE, RETURNING y transacciones.
Cada intento mezcla preguntas y respuestas para evitar patrones memorizables.
Cargando preguntas…
Qué vas a practicar
Este banco trabaja definición y modificación de datos mediante situaciones de aplicación: crear tablas, elegir restricciones, insertar filas, actualizar con seguridad, eliminar registros, recuperar valores modificados y controlar transacciones.
- Elegir tipos y restricciones coherentes con los datos.
- Definir claves primarias, únicas y foráneas.
- Escribir INSERT, UPDATE y DELETE seguros.
- Comprender RETURNING, ON CONFLICT, transacciones, ALTER TABLE e índices.
Preguntas de ejemplo
Los ejemplos siguientes pertenecen al banco interactivo y conservan exactamente la misma respuesta y explicación.
1Selecciona la sentencia que crea una tabla nueva inicialmente vacía.
Respuesta: CREATE TABLE
Explicación: CREATE TABLE define el esquema de una relación y sus columnas, restricciones y opciones. La sentencia define metadatos y restricciones; no introduce filas hasta que se ejecute una operación de inserción.
2Elige la forma moderna de PostgreSQL que genera identificadores enteros automáticamente según el estándar SQL.
Respuesta: id bigint GENERATED ALWAYS AS IDENTITY
Explicación: Las columnas identity están vinculadas a una secuencia y forman parte de la sintaxis estándar adoptada por PostgreSQL. IDENTITY vincula la columna a una secuencia gestionada y permite controlar si los valores manuales se aceptan o rechazan.
3Elige la acción que impide eliminar un padre mientras existan hijos que lo referencian.
Respuesta: ON DELETE RESTRICT
Explicación: RESTRICT rechaza la operación cuando la referencia todavía existe. SET NULL requiere que la columna hija admita NULL, mientras que CASCADE elimina o actualiza las filas relacionadas.
4Elige la sentencia que elimina pedidos cancelados.
Respuesta: DELETE FROM pedidos WHERE estado = 'cancelado';
Explicación: DELETE FROM elimina las filas que satisfacen WHERE y conserva la estructura de la tabla. DELETE retira filas pero conserva la tabla, sus columnas y sus restricciones.
5Elige la forma que evita error si una tabla que se desea eliminar no existe.
Respuesta: DROP TABLE IF EXISTS temporal;
Explicación: IF EXISTS convierte la ausencia del objeto en un aviso en lugar de un error. DROP TABLE elimina el objeto y sus datos; IF EXISTS solo controla el error por ausencia, no las dependencias.
6¿Qué hace UPDATE ... RETURNING id, estado en PostgreSQL?
Respuesta: Devuelve esos valores de las filas que realmente fueron actualizadas
Explicación: RETURNING usa la versión final de cada fila afectada como resultado de la sentencia. Puede incluir columnas generadas, defaults y expresiones igual que una lista SELECT.
Cómo aprovechar la práctica
Separa definición de esquema y modificación de filas. Comprueba tipos, restricciones y claves antes de escribir datos; en UPDATE y DELETE revisa siempre el filtro, y en transacciones identifica qué cambios se confirman o revierten.
Fuentes y alcance
Las preguntas se han contrastado con la documentación oficial vigente de PostgreSQL 18.4 sobre CREATE TABLE, INSERT, UPDATE, DELETE, RETURNING y transacciones. Revisión técnica: 19 de agosto de 2026.