当时区支持处于活动状态时,SQLite收到了一个天真的日期时间

时间:2012-06-22 14:08:06

标签: python sql datetime timezone

我在python中运行我的SQL时出现以下错误

/usr/lib/python2.6/site-packages/django/db/backends/mysql/base.py:64: RuntimeWarning: SQLite received a naive datetime (2012-06-22 15:53:43) while time zone support is active.

我的查询也返回错误的数据。 如果我将时间改为2小时(17:53:43而不是15:53:43),我的时区atm是gmt +2,所以我认为问题出在时区。

如何更改查询以使sql按照我打算的方式执行?

SQL:

sqlQuery = """SELECT w.id, w.serial, w.finishdate, w.weighingtype_id, w.netto, w.bruto, w.deleted
    FROM weighing w
    LEFT JOIN weighing w1
    ON w1.id = w.parent_id 
    WHERE w.user_id = %(userid)s"""
if date:
    sqlQuery = sqlQuery + " AND (w.created = %(date)s OR w.modified > %(date)s)"

编辑:添加了我的代码以转换日期时间

data = request.GET.copy()
if 'date' in data:
    try:
        data['date'] = datetime.datetime.strptime(data['date'], "%Y-%m-%dT%H:%M:%S")
    except:
        raise error(311)

0 个答案:

没有答案