Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
计算DATEDIFF mysql、python和pyqt5后显示行_Python_Mysql_Pyqt5 - Fatal编程技术网

计算DATEDIFF mysql、python和pyqt5后显示行

计算DATEDIFF mysql、python和pyqt5后显示行,python,mysql,pyqt5,Python,Mysql,Pyqt5,我有一个表,其中存储了液化石油气的序列号、加注日期和到期日期,现在我试图通过使用DATEDIFF mysql函数从到期日期中减去CURDATE()来标记尚未返回进行加注的气体,如果该值大于0,我想显示它。但这是行不通的。以下是示例代码: def flag_item(self): try: dbname = self.ui.lineEdit_database_name_flag.text() password = self.ui.lineEdit_passw

我有一个表,其中存储了液化石油气的序列号、加注日期和到期日期,现在我试图通过使用DATEDIFF mysql函数从到期日期中减去CURDATE()来标记尚未返回进行加注的气体,如果该值大于0,我想显示它。但这是行不通的。以下是示例代码:

def flag_item(self):
    try:
        dbname = self.ui.lineEdit_database_name_flag.text()
        password = self.ui.lineEdit_password_flag.text()
        table_name = self.ui.lineEdit_table_name_flag.text()

        db = mc.connect(
            host="localhost",
            user="root",
            password=password,
            database=dbname
        )

        dbcursor = db.cursor(buffered=True)
        dbcursor.execute(f"SELECT due_date FROM {table_name}")
        # result_1 = dbcursor.fetchall()

        for x in dbcursor:
            print(x)

            dbcursor.execute(f"SELECT * FROM {table_name} WHERE DATEDIFF(CURDATE(), '{x}') > 0")
            result = dbcursor.fetchall()

            self.ui.tableWidget_2.setRowCount(0)

            for row_number, row_data in enumerate(result):
                self.ui.tableWidget_2.insertRow(row_number)

                for column_number, data in enumerate(row_data):
                    self.ui.tableWidget_2.setItem(row_number, column_number, QTableWidgetItem(str(data)))

            print("Data Fetched")

    except mc.Error as e:
        print(f" Error: {e.msg}")
打印(x)只打印第一列,不打印其他日期。
如何渲染超过天数的所有列。

您确定迭代所有列的正确方法是dbcursor中x的
吗?还有其他方法吗?我猜您应该对result\u 1中的x执行
。您已经注释掉了
result_1
这仍然不会填充表格OK,但是打印(x)会得到什么