在the SQLite documentation中,它表示您可以通过运行查询来获取当前日期
SELECT date('now');
实际上它在SQLite命令行中起作用:
sqlite> SELECT date('now');
2012-03-03
但是,当我尝试在Python程序中使用它时,相同的查询不起作用:
import sqlite3
conn=sqlite3.connect('results.db')
c=conn.cursor()
c.execute('SELECT date(now);')
说no such column: now
。
有什么建议吗?
答案 0 :(得分:3)
now
周围缺少引号。
尝试c.execute("SELECT date('now');")
答案 1 :(得分:1)
你错过了一些蜱吗? c.execute('SELECT date(\'now now');')有效吗?
答案 2 :(得分:0)
'now'文字可以省略。如果是date()函数 没有参数,假设'now'字符串。所以 脚本可以写成如下:
#!/usr/bin/python
# -*- coding: utf-8 -*-
import sqlite3 as lite
con = lite.connect(':memory:')
with con:
cur = con.cursor()
cur.execute("SELECT date()")
today = cur.fetchone()[0]
print today
$ ./today.py
2013-02-05