Python - Accion al no recibir datos de SQL

 
Vista:

Accion al no recibir datos de SQL

Publicado por DAVID (2 intervenciones) el 31/10/2021 02:25:25
Hola a todos.
Quiero hacer una búsqueda en SQL en la que seleccione 3 campos de una tabla cuando el primer campo coincida con uno de los registros

Cuando el registro coincide me devuelve los datos de los 3 campos

Pero cuando no coincide me da el error
1
TypeError: 'NoneType' object is not subscriptable
y me finaliza el proceso

¿Hay alguna manera de que me indique que no existe el registro buscado sin que finalice el proceso?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import pymysql
 
connection = pymysql.connect(
            host='localhost',
            port=3306,
            user='admin',
            password='admin',
            db='prueba1'
        )
 
valor = ('AAA')
 
cursor = connection.cursor()
 
sql = 'SELECT NUID, TELEFONO, CORREO FROM UID WHERE NUID = %s'
 
cursor.execute(sql, valor)
user = cursor.fetchone()
print("UID:", user[0])
print("Teléfono:", user[1])
print("Email:", user[2])

Si el valor
1
AAA
existe me devuelve los datos
Si el valor no existe me da el error.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de 7aamin
Val: 11
Ha disminuido su posición en 6 puestos en Python (en relación al último mes)
Gráfica de Python

Accion al no recibir datos de SQL

Publicado por 7aamin (117 intervenciones) el 31/10/2021 05:22:55
Para eso usas try and except.. debes capturar el error que te da para evitar que te detenga el programa
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-1
Comentar

Accion al no recibir datos de SQL

Publicado por DAVID (2 intervenciones) el 31/10/2021 11:27:33
Muchísimas gracias. Solucionado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar