Я застрял с этой ошибкой и хотел бы узнать, как ее устранить.
Справочная информация: Я создал таблицу "Paycheck" в SQLite, которая имеет атрибут date, net атрибут оплаты и брутто атрибут оплаты. Я установил для атрибута date значение date в SQLite, а для атрибута net и gross значение целое число тип данных.
Проблема: у меня возникла проблема, при которой при попытке вставить запись paycheck атрибут date будет сохранен как "1994". Дело в том, что, когда я делал функцию для хранения записи о зарплате, я прочитал в Интернете, что формат даты для типа данных date в 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})")
Буду рад любым отзывам и предложениям по этому поводу.