@aske280
Тот еще новичок по python

Есть ошибка: Таблица пользователей имеет 2 столбца, но было предоставлено 1 значение, много вариантов перепробовал, но решения не нашел, как решить?

import sqlite3

with sqlite3.connect('base.db') as db:
    sql = db.cursor()

    sql.execute("""CREATE TABLE IF NOT EXISTS users (
        login TEXT,
        password TEXT,
        cash BIGINT
    )""")


    user_login = input("LOGIN: ")
    user_password = input("PASSWORD: ")

    sql.execute("SELECT login FROM users")
    if sql.fetchone() is None:
        sql.execute(f"INSERT INTO users VALUES ('?, ?, ?')", (user_login, user_password, 0))
        
        print("Зарегистрировано")
    else:
        print("Такая запись уже имеется!")

        for value in sql.execute("SELECT * FROM users"):
            print(value)
  • Вопрос задан
  • 164 просмотра
Решения вопроса 1
hottabxp
@hottabxp Куратор тега Python
Сначала мы жили бедно, а потом нас обокрали..
Было:
sql.execute(f"INSERT INTO users VALUES ('?, ?, ?')", (user_login, user_password, 0))
Стало:
sql.execute("INSERT INTO users VALUES (?, ?, ?)", (user_login, user_password, 0))

1) Не использовать F-строки;
2) Лишние одинарные кавычки вокруг знаков вопроса.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы