Python 如何从Treeview/Tkinter(SQLite)中的不同表中获取不同的值?

Python 如何从Treeview/Tkinter(SQLite)中的不同表中获取不同的值?,python,python-3.x,sqlite,tkinter,treeview,Python,Python 3.x,Sqlite,Tkinter,Treeview,我一直在和Tkinter合作,我试图在我的树视图中从不同的表中获取不同的列,我使用SQLite作为数据库,在我的第一个名为registers的表中,我得到了不同的列idcard、name、Nastname、Phone、address、email,在我的第二个名为Attention的表中,我使用ID号来存储我的条目Attentions我的意思是我有两个条目cardin=entry1和cardout=entry1,因此如果我的条目之一与我的注册表idcard匹配,它会自动将idcard、timein

我一直在和Tkinter合作,我试图在我的树视图中从不同的表中获取不同的列,我使用SQLite作为数据库,在我的第一个名为registers的表中,我得到了不同的列idcard、name、Nastname、Phone、address、email,在我的第二个名为Attention的表中,我使用ID号来存储我的条目Attentions我的意思是我有两个条目cardin=entry1和cardout=entry1,因此如果我的条目之一与我的注册表idcard匹配,它会自动将idcard、timein、timeout、date存储在我的考勤表中,直到它工作得很好,但我无法获得名称,我的第一个表中的姓氏列注册并存储在第二个表中,与我的ID卡相同,timein,timeout,日期ID卡,名称,姓氏必须与第一个表中的匹配,我试图解决它,但我失败了,我真的不知道如何做,提前有任何帮助。祝您今天过得愉快。这是我的密码:

def botoningreso: time=datetime.now.strftime%I:%M%p date=datetime.now.strftime%d/%m/%Y conn=sqlite3.connect'database.db' c=连接光标 cardin=entry1.get cardout=entry2.get c、 从idcard=?或idcard=?',cardin,cardout 如果c.fetchall: messagebox.showinfotitle='ID Registered',message='Registered Successfully' c、 executeINSERT进入考勤timein、idcard、日期值?、?、?、time、cardin、date在这里我还想保存第一个表*寄存器*中与idcard列匹配的*姓名*。 康涅狄格州 其他: messagebox.bathorrortittle=None,message='错误的ID卡' c、 接近
为获取的数据分配一个变量,然后对其编制索引并继续:

data=c.fetchall 如果数据: 用户名=数据[0][1]从获取的列表访问用户名 姓氏=数据[0][2]访问姓氏 messagebox.showinfotitle='ID Registered',message='Registered Successfully' c、 executeINSERT进入考勤时间、ID卡、日期、用户、sur值?、?、?、?、?、时间、卡丁、日期、用户名、姓氏 康涅狄格州
将变量分配给c.fetchall很重要,因为它的行为类似于生成器对象,一旦被使用就会丢失其项。

简而言之,您想从第一个表中获取用户名和姓氏,该表的id插入到第二个表中?@CoolCloud Yes man,直到现在我才获得idcard,timein,输入存储在第一个数据表中的正确ID卡后,第二个表中的超时和日期。在if之前printc.fetchall的输出是什么。@CoolCloud我尝试在if之前printc.fetchall,但它没有给我任何值,这不意味着您的查询没有返回任何结果,并且是错误的吗?