【问题标题】:Trying to log date and time into sqlite3尝试将日期和时间记录到 sqlite3
【发布时间】:2016-02-25 07:14:41
【问题描述】:

我的目标是获取两个变量 xdate 和 xtime 并使用 python 脚本将它们存储到 sqlite 数据库中的两个单独列中。我的代码是

from datetime import datetime
import sqlite3 as mydb
import sys

con = mydb.connect('testTime.db')

def logTime():
   i=datetime.now()
   xdate = i.strftime('%Y-%m-%d')
   xtime = i.strftime('%H-%M-%S')
   return xdate, xtime
z=logTime()

这是我尝试挂断的地方

try:
    with con:
        cur = con.cursor
        cur.execute('INSERT INTO DT(Date, Time) Values (?,?)' (z[0],z[1]))
        data = cur.fetchone()
        print (data)
    con.commit()
except:
    with con:
        cur=con.cursor()
        cur.execute("CREATE TABLE DT(Date, Time)')
        cur.commit()

当我尝试获取数据时,我一直没有得到任何信息。

有什么建议或推荐读物吗??

【问题讨论】:

    标签: python date time sqlite return


    【解决方案1】:

    您正在执行一个插入查询,它的结果是没有任何东西要获取。您应该运行一个选择查询,然后获取数据。

    fetchone()

    Fetches the next row of a query result set, returning a single sequence, or None when no more data is available.
    

    一个例子 -

    >>> cur.execute('INSERT INTO DT(Date, Time) Values (?,?)', (z[0],z[1]))
    <sqlite3.Cursor object at 0x0353DF60>
    >>> print cur.fetchone()
    None
    >>> cur.execute('SELECT Date, Time from DT')
    <sqlite3.Cursor object at 0x0353DF60>
    >>> print cur.fetchone()
    (u'2016-02-25', u'12-46-16')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-05
      相关资源
      最近更新 更多