如何在Tkinter treeview中显示使用python从Mysql表获取的数据

如何在Tkinter treeview中显示使用python从Mysql表获取的数据,python,mysql,tkinter,treeview,Python,Mysql,Tkinter,Treeview,我已经使用treeview创建了一个表,我想插入从mysql表中获取的数据。如果有人能帮助我,因为我已经尽了最大努力,但仍然徒劳无功。使用此语句tree.insert(“,1,text=2,value=(“name”,“5”,“5”))可以插入数据,但不能插入数据库中的数据,但是我想从数据库中获取并显示它。 这是我尝试过但失败的代码。请帮助。 ` `iv使用的是sqlite3而不是MySQL,但我假设从sql返回的值被放入多维数组中,这些数组需要多个索引,例如 array[0][1] 下面的代

我已经使用treeview创建了一个表,我想插入从mysql表中获取的数据。如果有人能帮助我,因为我已经尽了最大努力,但仍然徒劳无功。使用此语句
tree.insert(“,1,text=2,value=(“name”,“5”,“5”))
可以插入数据,但不能插入数据库中的数据,但是我想从数据库中获取并显示它。 这是我尝试过但失败的代码。请帮助。 `


`

iv使用的是sqlite3而不是MySQL,但我假设从sql返回的值被放入多维数组中,这些数组需要多个索引,例如

array[0][1]
下面的代码用于修改树

for i in self.tree.get_children():
    self.tree.delete(i) #clears current values from tree

for student in StudentList:
    self.tree.insert("" , 0,values=(student[0],student[1])
    #the index used would depend on what you want to be put into the tree
    #only uses one index per value instead of two as the for loop changes the first index

请注意,这是从我的课程作业(预订系统)中复制的,因此使用了名称来解决您的问题,首先您需要使用此查询读取数据库的所有行:

SELECT * FROM president
您需要执行以下操作:

cursor.execute("""SELECT * FROM president""")
现在,只需在行上循环并在
树中逐个插入它们即可:

更新:

我想您的表结构是这样的:

ID | name | votes | percentage
所以你可以运行这个:

cpt = 0 # Counter representing the ID of your code.
for row in cursor:
   # I suppose the first column of your table is ID
   tree.insert('', 'end', text=str(cpt), values=(row[1], row[2], row[3]))
   cpt += 1 # increment the ID

hello@Bill,我收到一个Typeerror:“cursor”对象不可调用。它来自cursor中(名称、投票数、百分比)的
检查我的编辑。请告诉我您的表的结构是否如我所说的@ByamukamaOscaryes,是这样的,我将尝试一下。感谢您投入的努力@Bill如果您对此代码有进一步的问题,请毫不犹豫地询问KHY
ttk。从数据库获取数据时,滚动条
不起作用。它在将数据直接插入到
树时工作
cpt = 0 # Counter representing the ID of your code.
for row in cursor:
   # I suppose the first column of your table is ID
   tree.insert('', 'end', text=str(cpt), values=(row[1], row[2], row[3]))
   cpt += 1 # increment the ID