首页 > 解决方案 > 如何使用python对数据库进行排序

问题描述

使用python将数据插入数据库表后如何对数据库进行排序

我只是用python导入的tkinter创建了一些程序,比如在输入一些名字和姓氏后将数据插入数据库。当我单击插入按钮时,它会将所有数据惰性化到表中。但我想通过单击排序按钮对数据进行排序。那可能吗 ?

def insertData():
    if  FIRSTNAME.get() == "" or LASTNAME.get() == "" or ADDRESS.get() == "" or USERNAME.get() == "" or PASSWORD.get() == "":
        txt_result.config(text="Please complete the required field!", fg="red")
    else:
        connection.Database()
        connection.cursor.execute("INSERT INTO `member` (firstname, lastname, address, username, password) VALUES(?, ?, ?, ?, ?)", (str(FIRSTNAME.get()), str(LASTNAME.get()), str(ADDRESS.get()), str(USERNAME.get()), str(PASSWORD.get())))
        connection.conn.commit()
        FIRSTNAME.set("")
        LASTNAME.set("")
        ADDRESS.set("")
        USERNAME.set("")
        PASSWORD.set("")
        connection.cursor.close()
        connection.conn.close()
        txt_result.config(text="Inserted a data!", fg="green")

    displayData()

def displayData():
    tree.delete(*tree.get_children())
    connection.Database()
    connection.cursor.execute("SELECT * FROM `member` ORDER BY `lastname` ASC")
    fetch = connection.cursor.fetchall()
    for data in fetch:
        tree.insert('', 'end', values=(data[0], data[1], data[2], data[3],data[4] ,'****')) # <-- I need here to sort the datas
    connection.cursor.close()
    connection.conn.close()

我希望输出 data.sort() 对数据库中的所有数据进行排序,但它会告诉我“int”对象不可迭代:(

标签: pythonsqlite

解决方案


推荐阅读