Я пытался сделать это в интерпретаторе, и я могу заставить его работать, но внутри моей функции это не
Что я пытаюсь сделать:
cursor = dbconnect.cursor()
cursor.execute("""SELECT * FROM credits WHERE phone = ?""",(phone,))
data = cursor.fetchone()
firstname = data[1] #the db is set as firstname in position 1 after the id(primekey)
Я на самом деле извлекаю все данные, используя этот метод только с разными переменными
Ошибка, которую я получаю, когда делаю это внутри функции:
firstname = data[1]
TypeError: 'NoneType' object is not subscriptable
Как примечание: я помещаю оператор печати после объекта данных, чтобы увидеть, что он возвращает, в интерпретаторе он возвращает кортеж, который я ищу, внутри возвращаемой функции
'None'
ПОЛНЫЙ КОД:
def FindByPhone(self,phone):
'''Find Credit by phone number ONLY'''
dbconnect = sqlite3.connect(self.dbname)
cursor = dbconnect.cursor()
cursor.execute("""SELECT * FROM credits WHERE phone = ?""",(phone,))
data = cursor.fetchone()
first = data[1]
last = data[2]
phone = data[3]
credit = data[4]
cid = data[0]
self.SetVariables(first,last,phone,credit,cid)
cursor.close()
dbconnect.close()
return