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.

Documentación consultada: PostgreSQL 18.4: CREATE TABLE · PostgreSQL 18.4: INSERT · PostgreSQL 18.4: UPDATE · PostgreSQL 18.4: DELETE · PostgreSQL 18.4: RETURNING