我正在尝试将数据导入表中。我正在批量插入。我已经使用CREATE语句创建了表,其中所有字段均为nvarchar(max)。我不明白为什么导入完成后,带有前导零的数据已更改为科学计数法。为什么它不保留为文本并保留前导零?
我建议您定义所需的零数目,然后进行更新。这是一个带有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