2014-01-14 74 views
0

我想使用导入和导出数据向导导入一些数据到sql。在Excel中,我有一个8个数字的列。但是,当我在导入向导中得到这些表示列显示为双。当我导入它时,我得到溢出错误。然后我回到excel,选择单元格,将它们格式化为没有小数位的数字。然后我转到导入向导中的“编辑映射”,并将目标更改为数字(8,0)。我也遇到了这些溢出错误。准备excel工作簿导入到SQL

想,如果我能得到的方式,以更好地格式化过人之处要导入的数据更好

谢谢

回答

1

您可以将表导入具有较大数据类型的临时表或临时表;验证和清理导入的数据;然后将其加载到您的真实表格中。如果您不能始终在Excel文档中强制执行数据类型,请在服务器端更轻松地导入数据,然后在那里处理它。

+0

是的我想编号写脚本来操纵它。 感谢您的帮助 –

0

我有遇到了这个问题,去年的项目。

我最终做的是将Excel中的数据导入到Access中。然后从Access导入到SQL。我不记得具体细节,但它解决了我的大部分问题。

0

我不认为在Excel中列的格式,使导入过程的不同(虽然我可能是错了。)

我的猜测是,要么你的号码中的一个是9或更多的数字,或者其中的一个具有非常小的小数部分,这些小数部分足够小,不会出现在Excel中,但是向导会检测到这些数字。

顺便说一句,你确定这个列是溢出错误吗?它是否告诉你哪一行有问题?

+0

我正在寻找问题的高低。例如,我有一个31110244(单独)的单元格。我将单元格的格式设置为没有deci的数字。地方。我打开向导,并在“编辑映射”中看到数据源是nvarchar(250),所以我说w/e。然后我将它导入到SQL(完美工作)。然后,当我尝试将其复制到我的表31110244存储为数字我得到错误类型varchar,值= 31110244.000000的算术溢出错误。 –

相关问题