Hola
Estoy trasteando con Python y una base de datos en SQLite3. Tengo una función que recibe un parámetro de tipo String, hace la búsqueda en la base de datos y devuelve el resultado.
Código:
def devolver(a):
sentencia = "SELECT * FROM articulos WHERE ID=?"
cursor.execute(setencia,a)
return cursor.fetchall()
Esto funciona perfectamente siempre y cuando el valor pasado exista en la base de datos, si no existe el programa se cae y me da un error en la línea execute. Pero si pongo esto:
Código:
def devolver(a):
sentencia = "SELECT * FROM articulos WHERE ID=?"
cursor.execute(setencia,[a])
return cursor.fetchall()
funciona perfectamente, es decir, si no existe en la base de datos devuelve una lista vacia. No logro encontrar información de por que este comportamiento. ¿Alguien sabe el por qué?
Un saludo.