Python SQLAlchemy 内存数据库连接

wal*_*man 6 python sqlalchemy

我正在使用 python 创建一个内存数据库,并且我想使用 SQLAlchemy 。

我的所有应用程序当前都直接处理对数据库的查询。

我见过多种连接方式,但都不起作用。我目前的尝试是:

# Creates an sqlite database in memory
db = Database(filename=':memory:', schema='schema.sql')
db.recreate()

# ORM
engine = create_engine('sqlite:///:memory:')

Base = automap_base()
Base.prepare(engine, reflect=True)
User = Base.classes.user

session = Session(engine)
Run Code Online (Sandbox Code Playgroud)

这给出了AttributeError: user. 如何正确地将我的数据库连接到 SQLAlchemy?

小智 1

ATTACH是你的朋友。

您可以将内存数据库附加到当前数据库会话。

例如,

db.init('sqlite://')
db.execute("ATTACH DATABASE ':memory:' AS my_database")
db.create_all()
Run Code Online (Sandbox Code Playgroud)