Кадр данных Dtypes по умолчанию назначает nvarchar(MAX)Python

Программы на Python
Anonymous
Кадр данных Dtypes по умолчанию назначает nvarchar(MAX)

Сообщение Anonymous »

У меня есть этот фрагмент. Когда код запускается для вставки в новую таблицу, он объявляет все столбцы как nvarchar(max). Очевидно, что это нежелательное поведение. Мой вопрос: есть ли способ определить здесь длину? Значит, это не MAX?
Из моих исследований я знаю, что у меня есть два варианта:
  • Используйте dict, чтобы предварительно определить все столбцы с соответствующими типами данных.
  • Сохраняйте промежуточную таблицу и добавляйте, а не заменяйте. Конечно, для этого сначала необходимо выполнить усечение.
Есть ли способ сделать что-то вроде этого dtype=NVARCHAR(100)? Или есть какой-то другой вариант, о котором я еще не подумал?
data.to_sql
(
name=f'{table_name}'
, schema='stage'
, con=con
, if_exists='replace'
, index=False
, dtype=NVARCHAR
)


Подробнее здесь: https://stackoverflow.com/questions/786 ... by-default

Вернуться в «Python»