gpt4 book ai didi

python - JDBC DatabaseMetaData 的 Python 等价物是什么?

转载 作者:太空宇宙 更新时间:2023-11-03 13:54:08 24 4
gpt4 key购买 nike

什么是 Python 等价于 DatabaseMetaData

最佳答案

这不是特定于 python 的答案;事实上我不知道 Python 数据驱动程序是否有这种东西。但也许这些信息会有所帮助。

ANSI SQL-92 和 SQL-99 标准要求 INFORMATION_SCHEMA schema ,它存储有关目录中表的信息。

可以通过查询该模式中的 View 来检索您寻找的元数据。

例如:

select column_name, is_nullable, data_type, character_maximum_length as maxlen 
from information_schema.columns
where table_name = 'Products'

并非所有数据库都执行该部分标准。例如,甲骨文就没有。

幸运的是,还有存储此类信息的特定于数据库的表。

虽然 Microsoft SQL Server 支持 Information_Schema,但也有特定于 SQL Server 的表可以提供更多元数据信息。它们是 [CatalogName].dbo.sysobjects[CatalogName].dbo.sysolumns。对这些表的类似查询将为您提供所需的元数据。示例:

select * from [CatalogName].dbo.syscolumns 
where id =
(Select id from [CatalogName].dbo.sysobjects where name = 'Products')

在 Oracle 中,ALL_TAB_COLUMNS 表可以为您提供信息:

select column_name, data_type, data_length, data_precision, data_scale
from ALL_TAB_COLUMNS
where table_name = 'EMP';

无论您是查询标准 View 还是特定于数据库的 View ,您都不需要 ODBC 来执行这些查询 - 您可以使用任何可用于操作数据的数据库连接,当然要经过安全批准。

关于python - JDBC DatabaseMetaData 的 Python 等价物是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/878737/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com