Saltar al contenido

# sql-desde-python

SQL desde Python

Volver a la portada del curso
Quiz

Cuestionario de Optimización SQL

Sección 5 · Optimización y Buenas Prácticas

5 preguntas de opción múltiple. Aprobar con 80%. Intentos ilimitados.

  1. 1. La función crear_pedido usa with con: e inserta el pedido, luego cada línea del detalle y descuenta el stock. Se piden 1 «Audífonos Bluetooth» y 10 «Juego de cuchillos», que solo tiene 9. ¿Qué queda en la base?

  2. 2. Ejecutas con.execute("SELECT * FROM producto") sobre la base de PyShop, cuya tabla se llama productos. ¿Qué excepción de sqlite3 se lanza?

  3. 3. Abres una conexión nueva con sqlite3.connect("pyshop.db") y, sin ejecutar ningún PRAGMA, insertas un pedido del cliente 9999, que no existe. pedidos.cliente_id tiene REFERENCES clientes(id). ¿Qué pasa?

  4. 4. pedidos tiene un índice sobre fecha. EXPLAIN QUERY PLAN de SELECT * FROM pedidos WHERE substr(fecha, 1, 7) = '2025-03' muestra SCAN pedidos. ¿Cómo se consigue que use el índice?

  5. 5. Un script inserta 2000 filas en pyshop.db llamando a commit() después de cada INSERT y tarda decenas de segundos. ¿Qué cambio lo acelera más?