Я бы хотел, чтобы SQLAlchemy помещал SQLite .journal файл в память, чтобы ускорить работу. Я попытался это:Как установить SQLite PRAGMA с помощью SQLAlchemy
sqlite_db_engine = create_engine('sqlite:///%s' % str(dbname), connect_args = {'PRAGMA journal_mode':'MEMORY', 'PRAGMA synchronous':'OFF', 'PRAGMA temp_store':'MEMORY', 'PRAGMA cache_size':'5000000'})
db = sqlite_db_engine.connect()
и это:
sqlite_db_engine = create_engine('sqlite:///%s' % str(dbname))
db = sqlite_db_engine.connect()
db.execute("PRAGMA journal_mode = MEMORY")
db.execute("PRAGMA synchronous = OFF")
db.execute("PRAGMA temp_store = MEMORY")
db.execute("PRAGMA cache_size = 500000")
не повезло. Для длинных транзакций я все еще вижу файл .journal, создаваемый на диске. Есть ли другой способ установить это?
* обратите внимание, у меня нет проблем делать это с помощью встроенного модуля
Я также попытался добавить слушателя, как эту тему: http://stackoverflow.com/questions/2614984/sqlite-sqlalchemy-how-to-enforce-foreign-keys – tomc
Я получил ошибку 'DBAPIError: (TypeError) «PRAGMA cache_size» является недопустимым аргументом ключевого слова для этой функции. Нет. «Нет, когда я пытаюсь использовать ваш код. Эта же ошибка вы получили? – Nilesh
Я не получаю никаких ошибок, код выполняется отлично, но, по-видимому, ничего не делает. – tomc