SQLite AUTO_INCREMENT ID字段在程序中颠倒

ih99xse1  于 2022-11-15  发布在  SQLite
关注(0)|答案(2)|浏览(185)

下面是一张更好地理解[1]的图片:https://i.stack.imgur.com/S6tpl.png

def consult(self):
    book = self.cuadro_blanco_cliente.get_children()
    for elementos in book:
        self.cuadro_blanco_cliente.delete(elementos)
    query = "SELECT Nro, codigo, nombre, nfc, telefono, celular,direccion FROM clientes"#
    rows = self.run_query(query)#query
    for row in rows:
        self.cuadro_blanco_cliente.insert('',0, text=row[1],values=row)
xv8emn3q

xv8emn3q1#

问题不在于id字段,而在于您在显示屏上添加行的方式。您正在从id1到n遍历数组,但始终将行添加到开头,使其看起来像是id从n到1。
尝试在查询子句的末尾添加以下内容:

"... ORDER BY id DESC"

这样,您将首先插入最后一个元素,然后在最后一个元素之前插入其他行,依此类推,以确保提取的行按id排序。

cfh9epnr

cfh9epnr2#

我在代码中添加了一些行,并修复了问题,现在从1开始

for row in rows:
        id = row[0]
        self.cuadro_blanco_cliente.insert("",END, id, text=id, values=row)

相关问题