如何将 qdatetime 转换为 sql datetime 和 select 从 sql table in python?
How to convert qdatetime into sql datetime and select from sql table in python?
用户选择 QDateTime,我需要在 pyodbc 中编写查询,它选择 table 中的项目,该日期大于选择的日期。
如何将其转换为 sql 日期时间?以及这个请求怎么写?
您可以使用如下方式将 QDateTime 变量(例如开始时间)转换为格式化字符串:
starttime.toString("YYYY-mm-dd");
将此传递给 Python。
要将其转换为 python 的本机日期时间,请执行以下操作:
import datetime
starttime = datetime.datetime.strptime(data_you_got_from_QDateTime, '%Y-%m-%d')
这会给你一个 Python datetime.datetime 对象来处理。
如果您只想在 SQL 查询中使用 QDateTime 提供的数据,您可以这样做:
import pyodbc
yourdate = date_received_from_QDateTime
cn = pyodbc.connect('DRIVER={SQL Server};SERVER=SQLSRV01;DATABASE=DATABASE;UID=USER;PWD=PASSWORD')
cursor = cn.cursor()
cursor.execute("select * from yourtable where yourfield > ?", yourdate)
for row in cursor.fetchall():
print row
这应该会为您提供合理的信息来调整上面的代码以获取信息。由于我不知道您如何将 QDateTime 发送到 Python,因此我无法对此发表评论。
用户选择 QDateTime,我需要在 pyodbc 中编写查询,它选择 table 中的项目,该日期大于选择的日期。 如何将其转换为 sql 日期时间?以及这个请求怎么写?
您可以使用如下方式将 QDateTime 变量(例如开始时间)转换为格式化字符串:
starttime.toString("YYYY-mm-dd");
将此传递给 Python。
要将其转换为 python 的本机日期时间,请执行以下操作:
import datetime
starttime = datetime.datetime.strptime(data_you_got_from_QDateTime, '%Y-%m-%d')
这会给你一个 Python datetime.datetime 对象来处理。
如果您只想在 SQL 查询中使用 QDateTime 提供的数据,您可以这样做:
import pyodbc
yourdate = date_received_from_QDateTime
cn = pyodbc.connect('DRIVER={SQL Server};SERVER=SQLSRV01;DATABASE=DATABASE;UID=USER;PWD=PASSWORD')
cursor = cn.cursor()
cursor.execute("select * from yourtable where yourfield > ?", yourdate)
for row in cursor.fetchall():
print row
这应该会为您提供合理的信息来调整上面的代码以获取信息。由于我不知道您如何将 QDateTime 发送到 Python,因此我无法对此发表评论。