Значения ячеек Excel являются усеченными OLEDB-поставщиком

Это помогает? http://joda-time.sourceforge.net/key_period.html Показан пример ниже

DateTime start = new DateTime(2004, 12, 25, 0, 0, 0, 0);
DateTime end = new DateTime(2006, 1, 1, 0, 0, 0, 0);

// period of 1 year and 7 days
Period period = new Period(start, end);

// calc will equal end
DateTime calc = start.plus(period);

// able to calculate whole days between two dates easily
Days days = Days.daysBetween(start, end);

14
задан Tor Haugen 22 May 2009 в 15:35
поделиться

1 ответ

Поставщик OLEDB для Excel попытается автоматически определить типы данных на основе первых 8 строк данных, это можно установить с помощью свойства HDR = Yes / No в строке подключения. Кроме того, есть несколько типов, которые можно применять к текстовым столбцам. Тип памятки содержит более 255 символов, поэтому, если ни одна из первых 8 строк не содержит их, тип данных будет неправильно установлен.

Способ изменить это - изменить параметр реестра TypeGuessRows, как описано здесь: Служба поддержки Microsoft

ПРИМЕЧАНИЕ. Допустимый диапазон значений для ключа TypeGuessRows - от 0 до 16. Однако, если значение равно 0, количество сканируемых исходных строк составляет 16384. Поэтому, если у вас очень большой файл, убедитесь, что самые большие строки идут первыми.

19
ответ дан 1 December 2019 в 12:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: