Когда вы ВСТАВЛЯЕТЕ, УДАЛЯЕТЕ, ОБНОВЛЯЕТЕ Курсор не используется.Чтобы получить данные из таблицы, которую вы используете (выполните) SELECT SQL, курсор будет содержать набор результатов.
Таким образом, вам нужно выполнить INSERTS и затем выполнить SELECT, например, с помощью «SELECT * FROM users», а затем использовать result = cursor.fetchall()
.
вместо выполнения для соединения, которое вы выполняете для курсора..
Что-то вроде (для тестирования таблица отбрасывается и создается и используются жестко закодированные значения (очевидно, соответствующим образом скорректированы)): -
def insert_user():
import sqlite3
score = "0"
db = sqlite3.connect("Database.db")
sql = "DROP TABLE IF EXISTS users"
db.execute(sql)
sql = "CREATE TABLE IF NOT EXISTS users (userID INTEGER PRIMARY KEY, username TEXT UNIQUE, firstname TEXT, surname TEXT, age INTEGER, password TEXT, score INTEGER)"
db.execute(sql)
result = db.cursor()
sql = "INSERT INTO users (username,firstname, surname, age, password , score) VALUES (?,?,?,?,?,?)"
db.execute(sql,("testusername", "testfirstname","testsurname" , 10, "password" ,score))
db.commit()
result.execute("SELECT * FROM users")
print("{0:<20} {1:<20} {2:<20} {3:<20} {4:<20} {5:<20} {6:<20}".format("userID","username","firstname","surname","age","password","score"))
print("====================================================================================================")
for each in result:
print("{0:<20} {1:<20} {2:<20} {3:<20} {4:<20} {5:<20} {6:20}".format(each[0],each[1],each[2],each[3],each[4],each[5],each[6]))
insert_user()
Результат: -
E:\PYCharmPythonProjects\venv\Scripts\python.exe E:/PYCharmPythonProjects/Test001.py
userID username firstname surname age password score
====================================================================================================
1 testusername testfirstname testsurname 10 password 0
Process finished with exit code 0