代码:
cur = sqlCon.cursor()
cur.execute("select datedue from library where member=%s ", Member.get())
row = cur.fetchone()
print(datetime.date.today())
for x in row:
print(row)
但结果是的(datetime.date(2022,12,6),)
我该怎么办?????
您可以使用strftime()
函数:
cur.execute("SELECT datedue FROM library WHERE member = %s", Member.get())
row = cur.fetchone()
date_str = row["datedue"].strftime("%Y-%m-%d")
print(date_str)
您也可以使用STR_TO_DATE()
函数在MySQL端处理此问题:
sql = "SELECT STR_TO_DATE(datedue, '%Y-%m-%d') AS datedue FROM library WHERE member = %s"
cur.execute(sql, Member.get())
row = cur.fetchone()
date_str = row["datedue"]
print(date_str)
这里STR_TO_DATE()
在数据库端返回一个字符串,因此在Python中不需要转换。