Top.Mail.Ru
Ответы
Аватар пользователя
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+3

Помогите найти ошибку в библиотеке sqlite3

import sqlite3 #модуль sqlite
import discord #модуль discord api
from discord.ext import commands #необходимый класс для обработки команд
from tabulate import tabulate #удобный модуль для рисования таблиц
import json #используется только для обработки инвентаря, но ему можно найти и другое применение

conn = sqlite3.connect("Discord.db") # или :memory:
cursor = conn.cursor()

CREATE TABLE "shop" ("id" INT, "type" TEXT, "name" TEXT, "cost" INT)

CREATE TABLE "users" ("id" INT, "nickname" TEXT, "mention" TEXT, "money" INT, "rep_rank" TEXT, "inventory" TEXT, "lvl" INT, "xp" INT)


Выскакивает ошибка при запуске по типу invalid syntax. Perhaps you forgot a comma?

По дате
По рейтингу
Аватар пользователя
Гуру

Ошибка в этой библиотеке SQLite3 не связана со синтаксисом самой библиотеки, а скорее всего вызвана отсутствием команды для выполнения SQL-запросов.

Для исправления этой ошибки вам необходимо написать SQL-запросы для создания таблиц в базе данных перед тем, как использовать курсор для выполнения операций в базе данных. Например:

conn = sqlite3.connect('Discord.db')
cursor = conn.cursor()

create_shop_table = "CREATE TABLE shop (id INT, type TEXT, name TEXT, cost INT)"
cursor.execute(create_shop_table)

create_users_table = "CREATE TABLE users (id INT, nickname TEXT, mention TEXT, money INT, rep_rank TEXT, inventory TEXT, lvl INT, xp INT)"
cursor.execute(create_users_table)

После того, как вы создадите таблицы в базе данных SQLite, вы сможете использовать курсор для выполнения операций SELECT, INSERT, UPDATE и DELETE над данными в этих таблицах.

Аватар пользователя
Мудрец

ChatGPT говорит,что в данном коде отсутствуют операторы "execute" для выполнения запросов на создание таблиц.