从文件使用批量插入时,前导零消失

时间:2013-09-30 16:40:37

标签: sql sql-server sql-server-2005 csv bulkinsert

我正在使用bulk insert将数据从csv文件插入到SQL表中。 csv文件中的一列是“ID”列:即列中的每个单元格是可以具有前导零的“ID号”。示例:00117701,00235499等

SQL表中的等效列为varchar(255)类型。

当我将数据批量插入表格时,“ID”列的每个元素中的前导零都会消失。换句话说,00117701变为117701等等。

这是列类型问题吗?如果没有,那么解决这个问题的最佳方法是什么?

谢谢!

1 个答案:

答案 0 :(得分:1)

不确定是什么导致它剥离前导零,但我不得不“修复”过去的一些数据并做了类似的事情:

UPDATE <table> SET <field> = RIGHT('00000000'+cast(<field> as varchar(8)),8)

您可能需要根据自己的需要对其进行一些调整,但也许您可以从中获得想法?