Простое преобразование между типами столбцов SQLAlchemy и типами данных Python?

Я ищу простой способ на Python для сравнения типов столбцов из SQLAlchemy с базовыми типами. Например, если мой тип столбца - VARCHAR любой длины, я хочу прочитать его как строку.

Я могу прочитать тип столбца нормально, но я не уверен, что это простой способ проверить его базовый тип .. . Было бы неплохо, если бы я мог использовать что-то вроде «if isinstance (mycolumn, int)» - но я новичок в python и не уверен, как это будет работать.

Вот что у меня есть:

from sqlalchemy import MetaData
from sqlalchemy import create_engine, Column, Table
engine = create_engine('mysql+mysqldb://user:pass@localhost:3306/mydb', pool_recycle=3600)
meta = MetaData()
meta.bind = engine
meta.reflect()
datatable = meta.tables['my_data_table']
[c.type for c in datatable.columns]

Вывод :

[INTEGER(display_width=11), DATE(), VARCHAR(length=127), DOUBLE(precision=None, scale=None, asdecimal=True)]

Моя конечная цель двоякая, во-первых, потому что я хочу отформатировать вывод на основе типа, когда я загружаю его в свой jQuery jqGrid. Во-вторых, я медленно конвертирую ненормализованные таблицы данных в нормализованную структуру, и хочу обеспечить единообразие моих типов - (чтобы мои числа в предыдущей таблице сохранялись в виде чисел, а не строк ...)

7
задан snakecharmerb 29 November 2018 в 09:35
поделиться