@snezhok8891

Здравствуйте. Как правильно написать функцию для определения типа данных при создании таблицы в sqlite3?

data_type = {
'str': 'TEXT',
'int':'INTEGER',
'float':'REAL',
'nul':'NUL'
}
@staticmethod
def create_table(dbname, table, row):
import sqlite3
conn = sqlite3.connect(dbname)
cur = conn.cursor()
cur.execute(f"CREATE TABLE IF NOT EXISTS {table}({', '.join([str(i) for i in row])}:[{data_type} for i in row] ")
conn.commit()
как прописать определение типа данных в таблице?
  • Вопрос задан
  • 42 просмотра
Пригласить эксперта
Ответы на вопрос 1
Vindicar
@Vindicar
RTFM!
Ну для начала не пытаться засунуть запрос в одну f-строку, а собирать его по частям. Нечитаемо же. И зачем тебе @staticmethod, если это не часть класса? А если часть класса, то почему staticmethod, а не classmethod - ты же обращаешься к константе data_type, которая должна быть в том же классе, не?
А вообще, у меня такое чувство что ты пытаешься сделать свою ORM. Попробуй погоняй ponyorm или peewee, они простые и удобные.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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