Python3 - База данных sqlite3 - sqlite3.OperationalError: нет такого столбца: - PullRequest
0 голосов
/ 19 апреля 2020

Я пытаюсь создать небольшую и простую бухгалтерскую программу, вот мой код:

import sqlite3 as lite #db
import sys #db
from pathlib import Path #check file exists

successful_login = False

def login_process():
    print("Welcome to your accountance program, write your username: ")
    user = input()
    my_file = Path("./%s" % (user,))

    if my_file.is_file():
        con = lite.connect(user)
        main_loop()

    else:
        con = lite.connect(user)
        print("Write the name of your bank account: ")
        bankaccount = input()
        print("Write how much money do you have on it: ")
        starting_money = int(input())
        print(starting_money)

        with con:
            cur = con.cursor()
            cur.execute("CREATE TABLE Bank(Name TEXT, Money INT)")
            cur.execute("INSERT INTO Bank VALUES (%s,%s)" %  (bankaccount,starting_money))
        main_loop()

А вот ошибка:

,

Почему это происходит?

Спасибо!

1 Ответ

0 голосов
/ 19 апреля 2020

Из python sqlite API сделайте c:

# Never do this -- insecure!
symbol = 'RHAT'
c.execute("SELECT * FROM stocks WHERE symbol = '%s'" % symbol)

(И этот пример НЕОБЫЧНОГО изучения тщательно следует осветите, что является ошибкой в ​​этой программе).

Предлагаем использовать do c, чтобы узнать, как использовать заполнители . Это важная привычка для развития.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...