python - 从 sqlalchemy 中的表获取主键列名称(核心)

标签 python sqlalchemy

我正在使用 Sqlalchemy 的核心,因此我没有像其他类似问题一样使用声明性基类。 如何使用引擎获取表的主键?

最佳答案

我想发表评论,但我没有足够的声誉。

构建于 greenbergé答案:

from sqlalchemy import create_engine, Table, MetaData

dbUrl = 'postgres://localhost:5432/databaseName'   #will be different for different db's

engine = create_engine(dbUrl)
meta = MetaData()

table = Table('tableName', meta, autoload=True, autoload_with=engine)

[0] 并不总是 PK,仅当 PK 只有一列时才如此。 table.primary_key.columns.values() 是一个列表。 为了获取多列 pk 的所有列,您可以使用:

primaryKeyColNames = [pk_column.name for pk_column in table.primary_key.columns.values()]

关于python - 从 sqlalchemy 中的表获取主键列名称(核心),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44089396/

相关文章:

python - 如何从 django 查询集中检索项目?

python - SQLAlchemy 列到行的转换,反之亦然——这可能吗?

python - SQLAlchemy:如何按两个字段分组并按日期过滤

具有 "+00"时区偏移格式的 Python strptime?

Python如何获取图像然后POST(通过请求库)

python - Plotly:如何使用热图制作带注释的混淆矩阵?

python - Windows 中的 SQLAlchemy 引擎绝对路径 URL

python - 如何选择数据框中列的每个类别?

python - Oracle 中的 SQLAlchemy 大数截断/舍入问题

python - SQLAlchemy 中的错误处理