我正在尝试将 alembic 与雪花一起使用来版本控制我用于 PostgreSQL 和雪花的架构。我一直遇到这个 Unexpected 'UNIQUE' 错误。我知道这是因为它试图创建一个索引,雪花不支持的东西。这对我来说很奇怪,因为我认为 SQLAlchemy 中方言系统的目的是管理实现之间的差异,并在它不受支持时阻止它尝试创建此索引。
我按照雪花网站上的指南将方言添加到alembic,调用升级功能如下:
engine = create_engine(SNOWFLAKE_DATABASE_URI)
with engine.begin() as con:
logger.info("Starting db upgrade.")
cfg = Config("migrations/alembic.ini")
cfg.attributes["connection"] = con
cfg.attributes["configure_logger"] = False
command.upgrade(cfg, "head")
连接器是否工作不正常,或者我没有以正确的方式调用它?