可以在SQLAlchemy中创建临时表而不追加到Table._prefixes吗?

8 投票
1 回答
5664 浏览
提问于 2025-04-15 16:40

我想在SQLAlchemy中创建一个临时表。我可以通过对一个Table对象调用table._prefixes.append('TEMPORARY')来构建一个带有TEMPORARY关键字的CREATE TABLE语句,但这样做看起来没有使用table.select().prefix_with()来给数据操作语言表达式添加前缀那么优雅。

那么,DDL(数据定义语言)有没有类似.prefix_with()的方法呢?

1 个回答

11

不,prefix_with() 这个功能只适用于 SELECT 和 INSERT 语句。不过,如果你想在创建表的时候加个前缀,可以直接把它放在表的定义里:

t = Table(
    't', metadata,
    Column('id', Integer, primary_key=True),
    # ...
    prefixes=['TEMPORARY'],
)

撰写回答