Python / Sqlite-如何在数据库中计算给定日期的年龄

时间:2019-02-18 13:08:56

标签: python sql sqlite

我目前正在测试SQL。我注意到从数据库中获取值并在python中弄乱是很慢的。所以我尝试在我的SQL更新函数中进行计算。更快。现在,我有一个问题,我在数据库中有一个用datetime.utcnow()创建的日期,我想在更新函数中计算/更新年龄。

这是我通过我的代码得到的错误消息:

ValueError: parameters are of unsupported type

日期是我数据库中的文本,也许这是我的错误?

到目前为止,这是我的代码:

import sqlite3
from datetime import datetime

def database_create():
    conn = sqlite3.connect('Age_Calculation_in_SQL.db')
    c = conn.cursor()

    c.execute("INSERT into Test (ID, Date, Age) values (?, ?, ?)",
                ("1", datetime.utcnow(), 1))         
    conn.commit() 


def database_calculate():
    conn = sqlite3.connect('Age_Calculation_in_SQL.db')
    c = conn.cursor()

    c.execute("UPDATE Test SET Age = Date-? Where ID = 1", (datetime.utcnow()))    

    conn.commit()     

database_calculate()

0 个答案:

没有答案