如何通过在数据库中的两个表中使用卷号提及来获取所有详细信息并在 Tkinter GUI 中显示?

Posted

技术标签:

【中文标题】如何通过在数据库中的两个表中使用卷号提及来获取所有详细信息并在 Tkinter GUI 中显示?【英文标题】:how to fetch all the details and show in Tkinter GUI by using roll number menttion in two tables in the database? 【发布时间】:2019-01-29 09:57:09 【问题描述】:

我是 tkinter 的新手,我正在寻找一种方法,以便我可以使用卷号轻松地在数据库中显示我的两个表 Student 和 Issue Book 表,这在 tkinter GUI 中都是通用的(并且它是主键)学生详细信息窗口。这个想法是当我输入卷号时,它会在学生详细信息中显示表格记录,因为我提到了 Gui 中的特定框架以及如何制作一个将我的数据库数据显示给 tkinter Gui 的函数。我正在提供我的程序,请帮助我给一个澄清的解决方案。

Students_details.py

【问题讨论】:

请考虑添加代码示例,或修改您在此问题中发布的示例。就目前而言,它的格式和范围使我们很难为您提供帮助;这是一个great resource,可以帮助您开始。祝你的代码好运! 哦,我很抱歉。但现在我得到了解决方案 【参考方案1】:

通过 id 从数据库中获取数据并将其显示到 GUI 中的两个表中的代码是:

我做了两个函数来获取第一个表数据。

def details():
    rollnum = rnum.get()
    print(rollnum)
    conn = pymysql.connect(host='localhost', user='root', password='', db='data')
    a = conn.cursor()

    a.execute("select * from student where rollno='"+rollnum+"'")

    results = a.fetchall()

    count = a.rowcount

    print(results)

    print(count)

    if count > 0:
        for row in results:
            rnum1.set(row[0])
            sname.set(row[1])
            fanm.set(row[2])
            mtnm.set(row[3])
            dateob.set(row[4])
            bran.set(row[5])
    else:
        messagebox.showinfo("record not found")
    conn.close()

第二个是从数据库中获取另一个表

def bookdetails():
    rollnum = rnum.get()
    print(rollnum)
    conn = pymysql.connect(host='localhost', user='root', password='', db='data')
    b = conn.cursor()
    b.execute("select * from issuebook where rollno='" + rollnum + "'")
    resultb = b.fetchall()
    countb = b.rowcount
    print(resultb)
    print(countb)
    if countb > 0:
        for row in resultb:
            booknm.set(row[1])
            booknum.set(row[2])
            dateofiss.set(row[3])
            lstdate.set(row[4])

    else:
        messagebox.showinfo("record not found")
    conn.close()

我创建了另一个函数来调用这两个函数

def details_and_bookdetails():
    details()
    bookdetails()

然后我通过命令将按钮中的details_and_bookdetails函数传递给了。

【讨论】:

以上是关于如何通过在数据库中的两个表中使用卷号提及来获取所有详细信息并在 Tkinter GUI 中显示?的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 JDBC 获取 Oracle 表中的所有索引,即使它们由不同的用户拥有?

如何使用表中的全选复选框获取所有数据?

如何从PHP中的URL获取多个同名参数并将所有记录插入表中

如何通过单个查询显示存储在我的表中的两个日期之间的所有日期? [复制]

如何通过 SQL 语句从两个特定日期(由用户指定)之间的数据库表中获取数据?

如何通过比较两个表中的两列来更新表中的列