У меня большой текст строки для вставки в столбец в SQL Server 2014 Express (v12.0.2000).Изначально я определил поле как тип text
, и данные были вставлены в таблицу без каких-либо проблем.Позже я узнал, что тип данных text
устарел и не должен использоваться.Преобразование типа данных в varchar(max)
вызвало странную проблему в pyodbc.Когда те же данные вставляются в столбец varchar(max)
, выдается сообщение об ошибке со следующим сообщением:
[HY000] [Microsoft] [Драйвер ODBC SQL Server] Предупреждение: частичная вставка / обновление.Вставка / обновление столбца (ов) текста или изображения не удалось.(0) (SQLPutData)
, но та же самая вставка прекрасно работает со столбцом text
.
Я использовал драйвер {SQL Server}
с аутентификацией Windows, когда я изменил его на{SQL Server Native Client 11.0}
это начало сбой при аутентификации, поэтому я переключил его обратно на {SQL Server}
, так как он работал с типом данных text
.
Я изучил некоторые дискуссии, касающиеся подобных проблем, но могне найден случай, который помогает в отладке проблемы.
Я проверил размеры строк, в которых данные были успешно вставлены и не удалось:
TEXT
: все данные вставлены успешно. VARCHAR(MAX)
: строка длиной 98566 вставок, но длиной 326235 не срабатывает.
Любые указания, даже советы по отладке, будут высоко оценены.Заранее спасибо.