Импорт данных с ведущими нулями - SQL Сервер - PullRequest
0 голосов
/ 06 марта 2020

Я пытаюсь импортировать данные в таблицу. Я делаю массовую вставку. Я создал таблицу с помощью оператора CREATE, где все поля nvarchar (max). Я не могу понять, почему, когда импорт выполнен, данные с ведущими нулями были заменены на научную нотацию c. Почему он не остается в виде текста и сохраняет ведущие нули?

1 Ответ

0 голосов
/ 06 марта 2020

Я предлагаю вам определить количество нулей, которое вы хотите, а затем сделать обновление. Вот пример с 10 нулями.

create table #leadingZeros(uglynumber nvarchar(max),handsomenumber nvarchar(max),nicenumber nvarchar(max))
INSERT INTO #leadingZeros VALUES(1000000,0000123,0500000)

SELECT * FROM #leadingZeros
--OUTPUT:
--uglynumber    handsomenumber  nicenumber
--1000000   123     500000
UPDATE #leadingZeros SET 
uglynumber=RIGHT('0000000000'+uglynumber,10)
,handsomenumber=RIGHT('0000000000'+handsomenumber,10)
,nicenumber=RIGHT('0000000000'+nicenumber,10)

SELECT * FROM #leadingZeros
--OUTPUT
--uglynumber    handsomenumber  nicenumber
--0001000000    0000000123  0000500000
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...