У меня есть следующий код для загрузки файла CSV в базу данных PostgreSQL. Работает нормально вот так:
def Load_Data(file_name):
data = genfromtxt(file_name, delimiter=',', skip_header=1, dtype=[('curr', numpy.unicode_, 10),
('code', numpy.unicode_, 10),
('exp', numpy.unicode_, 10),
('cryp', numpy.unicode_, 10)])
return data.tolist()
Base = declarative_base()
class CurrencyDetails(Base):
__tablename__ = 'curr_det'
curr = Column(VARCHAR(10), primary_key=True)
code = Column(VARCHAR(10))
exp = Column(VARCHAR(10))
cryp = Column(VARCHAR(10), nullable=False)
Однако столбец exp является типом Integer, и я бы предпочел создать столбец таблицы exp с целочисленным типом. Я пытался использовать
exp = Column(Integer)
Но тогда я получаю ошибку
DataError ('(psycopg2.DataError) неверный синтаксис ввода для целого числа
Исходный CSV-файл имеет несколько пустых значений '', я полагаю, что это проблема. Можно ли загрузить как-нибудь как целое число без изменения файла?
Большое спасибо за помощь!