Python Peewee SqliteQueueDatabase таблица не создается - PullRequest
0 голосов
/ 07 декабря 2018

Я разрабатываю многопоточное приложение с базой данных SQLite.Я провел некоторое исследование, и кажется, что SqliteQueueDatabase может обеспечить требуемую обработку параллелизма.Я пролистал документацию, но, похоже, мне не удалось увидеть всю картину, как запустить и запустить базу данных.

from peewee import *
from playhouse.sqliteq import SqliteQueueDatabase

db = SqliteQueueDatabase(':memory:')


class Prime(Model):
    num = IntegerField()

    class Meta:
        database = db


db.start()
db.connect()
db.create_tables([Prime])
print db.get_tables()  # prints []
db.stop()

После запуска базы данных в приведенном выше примере я пытаюсь создатьтаблица для моей модели, но она не создается.Что мне не хватает?Я попытался найти пример peewee & SqliteQueueDatabase, который охватывает весь жизненный цикл, но не смог.

1 Ответ

0 голосов
/ 07 декабря 2018

Вы используете базу данных в памяти.Базы данных в памяти используют соединение для потока.Поэтому, если вы не используете режим совместно используемой памяти (вам нужно будет обратиться к документации по sqlite), вам не повезет.

Используйте базу данных на основе файлов, и ваш пример будет работать нормально.

...