Я прочитал некоторую таблицу базы данных с python в панде DataFrame и смог получить тип столбцов:
import sqlite3
import pandas
with sqlite3.connect('d:\database.sqlite') as connection:
dataFrame = pandas.read_sql_query('SELECT * FROM my_table', connection)
dataFrame.dtypes
![enter image description here](https://i.stack.imgur.com/2NqDn.png)
Мне интересно, если DataFrame также включает дополнительные метаданные о таблице, например, если столбец обнуляется, значение столбца по умолчанию и если столбец является первичным ключом?
Я бы ожидал некоторые методы, такие как
dataFrame.isNullable('columnName')
, но не смог найти такие методы.
Если метаданные не включены в DataFrame, мне пришлось бы использовать дополнительный запрос для извлечения этих данных, например,
PRAGMA table_info('my_table')
Это дало бы столбцы
cid, name, type, notnull, dflt_value, pk
Однако я бы хотел избежать этого дополнительного запроса.Особенно, если мой исходный запрос не содержит все столбцы или если он определяет некоторые дополнительные столбцы, это может затруднить поиск соответствующих метаданных.
=> Если DataFrame уже содержит нужные метаданные, пожалуйста, дайте мне знать, как получить к ним доступ.
(В Java я мог бы получить доступ к метаданным с помощью ResultSetMetaData metaData = resultSet.getMetaData();
)