如何在sqlalchemy中为表指定填充因子?

2024-09-30 16:22:59 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有一张简单的桌子。在原始SQL中,它如下所示:

CREATE TABLE events (id INT PRIMARY KEY) WITH (fillfactor=60);

我的问题是如何使用sqlalchemy声明性基为表指定fillfactor 当然,我可以通过在sqlalchemy中像execute("ALTER TABLE events SET (fillfactor=60)")一样使用原始SQL来实现这一点,但我感兴趣的是,是否有一种方法可以使用本机sqlalchemy工具来实现这一点

我尝试了以下方法,但没有成功:

from sqlalchemy import Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base

Base = declarative_base()

class SimpleExampleTable(Base):
    __tablename__ = 'events'
    __table_args__ = {'comment': 'events table', "fillfactor": 60}

    id = Column(Integer, primary_key=True)
TypeError: Additional arguments should be named <dialectname>_<argument>, got 'fillfactor'

通过查看文档,我只在索引中找到了有关fillfactor用法的信息

我的环境:

  • python 3.9
  • sqlalchemy 1.3.22
  • PostgreSQL 11.6

Tags: 方法fromimportidsqlbasesqlalchemytable