В данный момент я пытаюсь попросить пользователя ввести данные в Python, ввести некоторую информацию (здесь: costID, cost, categoryID, date).Но я не знаю, чтобы начать.На этом шаге проверка ввода не требуется.
Мне удалось получить доступ к своей базе данных и вставить что-то вручную.Я пробовал несколько способов использования функции python input
, но не могу использовать ее в качестве заполнителя в строке SQL.
import sqlite3
with sqlite3.connect('Expenses.sqlite') as conn:
# INSERT MANUALLY
script = "INSERT INTO Expense (ExpenseId, Amount, CategoryId, Date) VALUES ('103', '43625.5', '5', '2019-01-20');"
conn.execute(script) # execute the script
conn.commit() # commit changes to the file
# INSERT USER INPUT ???
pass
Это моя идея:
with sqlite3.connect('Expenses.sqlite') as conn:
amount = input("What is the amount?")
script = "SELECT * FROM Category;"
conn.execute(script)
print(script)
category = input("What is the category?")
exp_ID = "SELECT LAST ExpenseId FROM Expense);"
date = datetime.date.today()
script = "INSERT INTO Expense (ExpenseId, Amount, CategoryId, Date) VALUES (exp_ID, amount, category, date);"
conn.execute(script)
conn.commit()
pass
Наконец, я хочу добиться того, чтобы у пользователя запрашивалась сумма расходов, а затем - категория расходов.ExpenseID и дата должны быть добавлены автоматически.Формат даты год-месяц-день.Большое спасибо за совет.