Почему число, импортируемое в SQL Server из Excel, содержит букву e? - PullRequest
0 голосов
/ 16 февраля 2012

У меня есть лист Excel, который вставляет данные в SQL Server, но заметил для определенного поля, данные вставляются с e, это конкретное поле имеет тип varchar и размер 20.

Почему e вставляется, когда фактические данные для этих соответствующих полей 54607677038, 77200818179 и 9920996.

Помоги мне

Спасибо в ожидании.

Ответы [ 2 ]

3 голосов
/ 16 февраля 2012

Вы можете думать о '2007038971' как о просто строке чисел (я полагаю, что-то вроде кода статьи).Excel просто видит числа и обрабатывает их как числовые значения.Возможно, он выровнен по правому краю (по умолчанию для чисел) и не выровнен по левому краю (по умолчанию для строк).

Когда его просят сохранить в виде строки, он «услужливо» форматирует это число в строку, тем самым вводянотация «е» (значение 2007038971 составляет около 2,00704 * 10 ^ 9).

Вам нужно убедить Excel, что этот код действительно является строкой, возможно, добавив перед ним кавычку.

0 голосов
/ 16 февраля 2012

Как насчет этого.Когда вы читаете значение из Excel, тогда преобразуйте ToString () и вставьте в БД.Необходимо изменить соответствующий тип данных на основе данных в вашем Excel.

 double doub = 2.00704e+009;
 string val = doub.ToString();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...