为什么在存储fetchone()值时显示TypeError?

我有一张桌子set_reminders。我正在运行SELECT查询以获取一行。即使将fetchone()的值存储在变量中,然后像告诉我们in this question那样将其用于进一步使用后,它也会显示 TypeError 。下面是解决我的问题的代码。

@app.route('/',methods=['GET','POST'])
def index():
    recur_next = ''
    if request.method == 'POST' and request.form['btn']=='XYZ':
        date = request.form['date']
        subject = 'Event'
        reminders='Placement Drive'
        cur = mysql.connection.cursor()
        search = cur.execute('SELECT DATE,SUBJECT,DESCRIPTION,RECUR_NEXT FROM set_reminder WHERE DATE=%s AND SUBJECT=%s AND DESCRIPTION=%s',(date,subject,reminders))
        data = cur.fetchall()
        a = cur.fetchone()
        recur_next = a['RECUR_NEXT']
        print(recur_next)
        cur.close()

    return '''<form method="post">
    <input type="date" name="date">
    <input type="submit" name="btn" value="XYZ">
    </form>'''
 File "def.py",line 22,in index
    recur_next = a['RECUR_NEXT']
TypeError: 'NoneType' object is not subscriptable

这是显示的错误。请帮帮我。

appleapple12 回答:为什么在存储fetchone()值时显示TypeError?

Private Sub CommandButton1_Click() Dim fruit As String Dim number As String row_number = 1 With ComboBox1 .Clear End With Do number = Sheets("List1").Range("A" & row_number) fruit = Sheets("List1").Range("B" & row_number) If TextBox1 = number Then With ComboBox1 .AddItem fruit End With End If row_number = row_number + 1 Loop Until fruit = "" End Sub Private Sub ComboBox1_Change() Dim fruit As String Dim fshape As String Dim fcolor As String row_number = 1 Do fruit = Sheets("List1").Range("B" & row_number) fshape = Sheets("List1").Range("C" & row_number) fcolor = Sheets("List1").Range("D" & row_number) If ComboBox1 = fruit Then TextBox2 = fshape TextBox3 = fcolor End If row_number = row_number + 1 Loop Until fruit = "" End Sub 清空了游标的结果,因此fetchall()返回fetchone(),如果您先使用None,则fetchone()将是一个空列表。如果您两者都只需要使用fetchall()并从那里获取数据。

本文链接:https://www.f2er.com/3119178.html

大家都在问