1) Diseño mínimo de esquema y conexión
Define tabla y claves correctamente antes de insertar datos.
Una tabla con `PRIMARY KEY` garantiza identificador único y facilita operaciones posteriores.
`sqlite3.connect('app.db')` crea/abre archivo de base de datos; para pruebas rápidas puedes usar `:memory:`.
Mantén SQL de inicialización en funciones claras para que el proyecto sea reproducible.
import sqlite3
conn = sqlite3.connect('app.db')
cur = conn.cursor()
cur.execute('''
CREATE TABLE IF NOT EXISTS tareas (
id INTEGER PRIMARY KEY,
titulo TEXT NOT NULL,
completada INTEGER NOT NULL DEFAULT 0
)
''')
conn.commit()
conn.close()