我有一个查询,如:

select_query = [text(f) for f in fields]
with engine.connect() as conn:
    query = select(*select_query, MyTable.id).select_from(
        table(MyTable.__tablename__) ...

除了字段(在SELECT_QUERY内)是CamelCase之外,一切都很正常.是否有任何函数或指令来传递sqlalChemy,以便CamelCase字段不会 destruct SELECT?

推荐答案

您可以使用column struct (注意小写的"c")而不是文本 struct 来获得您想要的行为.使用column告诉SQLAlChemy它处理的是一个列名,而不是某个任意的SQL片段,因此它可以假定该名称是正确大小写的,并相应地引用.

import sqlalchemy as sa
...
select_query = [sa.column(f) for f in fields] 
...

Postgresql相关问答推荐

在Haskell中定义新类型与持久化类型的惯用方法

如何确定要与给定转储文件一起使用的pg_Restore版本?

有没有一种方法可以在参数中添加密码,并在批处理文件中需要时自动获取密码?

如何将 jackc/pgx 与连接池、上下文、准备好的语句等一起使用

PG 16 的 AGE 安装抛出错误:无法创建 src/backend/parser/ag_scanner.c

IF 块中的 CREATE FUNCTION 语句抛出错误,同时运行它自己的作品

如何在 MockDataProvider 中创建自定义 JOOQ 记录?

在 PostgreSQL 中提高 GROUP BY ... HAVING COUNT(...) > 1 的性能

postgres 中的模式前缀,被调用元素的范围

从dump文件中恢复三张表遇到的问题

当我写 SELECT ~1;在 Postgresql 上它给了我 -2 结果.这是什么原因?它一直持续〜4和-5等

PostgreSQL - jsonb_each

如何在可选参数上查询 postgres?

django.db.utils.IntegrityError:duplicate key value violates unique constraint "django_content_type_pkey"

PostgreSQL 获取过go 12 小时的元素

PGAdmin 编辑数据

如何查询前 10 行,下一次从表中查询其他 10 行

基于秒的 Postgresql 日期差异

pgadmin 错误:no password supplied

pg_restore 目录错误