python:如何使用内存数据库测试我的数据库模型?
我正在python:如何使用内存数据库测试我的数据库模型?,python,postgresql,sqlalchemy,flask,alembic,Python,Postgresql,Sqlalchemy,Flask,Alembic,我正在Flask中开发一个项目,并使用SQLAlchemy作为ORM 我有一个用户型号 class User(UserMixin, db.Model): __tablename__ = 'users' # noinspection PyShadowingBuiltins uuid = Column('uuid', GUID(), default=uuid.uuid4, primary_key=True, unique=True)
Flask
中开发一个项目,并使用SQLAlchemy
作为ORM我有一个
用户
型号
class User(UserMixin, db.Model):
__tablename__ = 'users'
# noinspection PyShadowingBuiltins
uuid = Column('uuid', GUID(), default=uuid.uuid4, primary_key=True,
unique=True)
email = Column('email', String, nullable=False, unique=True)
_password = Column('password', String, nullable=False)
created_on = Column('created_on', sa.types.DateTime(timezone=True),
default=datetime.utcnow())
last_login = Column('last_login', sa.types.DateTime(timezone=True),
onupdate=datetime.utcnow())
- 我使用创建了一个迁移脚本李>
- 我选择的数据库是
,但为了测试我的模型,我更喜欢使用PostgreSQL
来加快测试速度SQLite
- 当
中有一些类型,而PostgreSQL
中没有这些类型时,出现了问题,在本例中是SQLite
UUID
- 当我在
上运行迁移时,它会给出错误消息sqlite://
-如何使用
GUID
保留模式,并使用SQLite运行内存测试?似乎SQLite没有类似的东西-当他们的数据库是
PostgreSQL
时,人们运行测试(在内存中)更快的一些方法是什么
无论如何,如果你想把东西保存在内存中……那么,把数据库保存在内存中吧。
实际上,PostgreSQL将频繁访问的数据移动到内存中,但无论如何,您可以安装一些RAMFS/RAMHDD解决方案并将您的数据库放在内存中,因此速度非常快
您可以通过谷歌搜索解决方案“postgresql on ramdisk”一般来说,混合使用数据库后端进行测试、开发和发布不是一个好做法。见类似问题:和。