将excel数据导入到SQL server数据库的详细过程
原文链接:https://www.xjx100.cn/news/415146.html?action=onClick
1.将要导入的excel表格数据如下,第一行数据默认为数据库表中的字段,所以这个必须要有,否则无法映射导入。如下图(只截部分数据)
2.打开Microsoft SQL Server Management Studio 17数据库管理软件,选中要导入的mydb数据库,点击右键->再点任务->选中导入数据。(或者去WIn+s搜索导入,直接找导入导出功能)
3.一直点击下一步,到达下图以后,在数据源中选择Microsoft excel ,之后选择你要导入的文件,一定要勾选首行包含列名称。
4.一切似乎进行的很顺,此时点击下一步后会报如下错(未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序),这是因为我们的excel表格的版本太高,我们可以将excel另存为2003版的,此时重新进行上一步则没有这个错了。
Excel另存图
5.此时数据源已经选择完毕,点击下一步选择要导入的目标地址,之后选则SQL server即可。服务器地址如果你是本地就选local,远程服务数据库就输入IP地址,之后输入你的用户名和密码(若是本地直接选择window身份验证即可),详细过程如下图:
6.点击下一步-》下一步选择你在mydb数据库要导入的目标表PURCHASE_ORDER,选择之后点击编辑映射,这里会将excel和表中字段进行映射对应(这步比较关键一定要对应好)
可以手动修改目标对应字段
7.一直点击下一步知道点击完成后会提示(错误 0xc02020c5: 数据流任务 1: 在将列“SUPPLIER”(54)转换为列“SUPPLIER”(302)时数据转换失败。转换操作返回状态值 4 和状态文本“文本被截断,或者一个或多个字符在目标代码页中没有匹配项。”)。这是可能由于你的数据库字段长度和类型与excel不符造成,需要到数据库中的设计去修改。
8.将这些错修改完之后点击完成可能会报一些莫名奇妙的错,导致导入数据失败。此时我们点击上一步,在如下图中的出错时和截断时修改为忽略,点击下一步-》完成后即可导入成功。(这样会有一些风险,可能会有一些隐藏问题没有发现,要慎重)
9.出现如下图则导入数据成功