我被这个错误困住了,希望你能了解如何解决它。
背景:我在 SQLite 中构建了一个“Paycheck”表,该表具有日期属性、净工资属性和总工资属性。我在 SQLite 中将date属性设置为date数据类型,并将net和Gross属性设置为integer数据类型。
问题:我遇到了一个问题,当我尝试插入薪水记录时,日期属性将存储为“1994”。问题是,当我创建存储薪水记录的功能时,我在网上看到SQLite 中日期数据类型的日期格式是 yyyy-mm-dd,并且我确保我会以该格式插入日期,但代码会运行良好,但在数据库中,每次我尝试添加记录时,它都会为日期显示“1994”。
以下是所有相关代码:
import sqlite3
import datetime
def date_sql_format():
"""return date in sql DATE format"""
return str(datetime.datetime.now().strftime("%Y-%m-%d"))
def execute(command: str):
"""Take a sql query and execute it on the database."""
connect = sqlite3.connect("db.sqlite")
cursor = connect.cursor()
cursor.execute(command)
connect.commit()
connect.close()
def add_paycheck(date: str, net: float, gross: float):
"""Add a paycheck record to the database."""
template = f"{date}, {net}, {gross}"
execute(f"INSERT INTO Paycheck (Date, Net, Gross) VALUES ({template})")
我很乐意对此提供任何反馈和建议。