Hola.
Al hacer una consulta a una base de datos SQLite de la siguiente forma:
try:
cursor.execute("""SELECT registro FROM tabla WHERE registro = ?""", (valor_del_registro,))
except:
hacer cualquier cosa
NUNCA, aunque el valor_del_registro no exista en la base de datos, se produce la excepción.
¿Qué estoy haciendo mal?
Un saludo.
¿será porque hay " triples en el código?
cursor.execute("""SELECT registro FROM tabla WHERE registro = ?""", (valor_del_registro,))
lo cambiaría por:
cursor.execute("SELECT registro FROM tabla WHERE registro = ?", (valor_del_registro,))
Hola.
Ya he conseguido solucionar el problema; sería de esta forma:
try:
cursor.execute("""SELECT registro FROM tabla WHERE registro = ?""", (valor_del_registro,))
cursor.fetchone()[0]
except:
hacer cualquier cosa
Yo lo interpreto de la siguiente forma: con hacer sólo una consulta mediante SELECT a la base de datos, no se genera la excepción; es necesario hacer alguna operación con el resultado obtenido para que sí se cree una excepción.
Un saludo.