首页 新闻 搜索 专区 学院

java怎么将excel中string类型在导入到数据库时转换成表中对应的id

0
[待解决问题]

就是大表中比如说有个部门这个字段,而各个部门存在部门这个表中,大表添加时取的是部门表的id来显示名称,而excel表中也有部门这个字段,但是是文字,需要与部门表的部门对应并取出id,在导入时存入大表中

爱学习的疯倾的主页 爱学习的疯倾 | 菜鸟二级 | 园豆:202
提问于:2022-01-12 17:15
< >
分享
所有回答(2)
0

这个导入时候,可以获取部门的字符串,然后在对比部门表获得部门id,然后保存进去。
不过由于是excel 是不可控制的,有可能有人随便填写一个不存在的部门,到制可能会出现没找到这个部门的情况,这时候做一个导入结果提醒,如果没找到部门,就保存到结果提醒列表里面。最后告诉操作者,成功多少条,失败多少条,失败的是哪几条,失败的原因是什么。 即可。

还有一种就是在excel 模板上下手了,自己手动做excel模板,部门自己做成下拉的,自己严格按照数据库里面的部门匹配校对。每次导入之前 先下载导入模板

总之原则就是控制excel里面的数据准确性

周技 | 园豆:208 (菜鸟二级) | 2022-01-12 18:09
0

如果数据不多的话(比如几万条)
可以分三步执行:

  1. 将excel数据导入数据库的一张临时表temp_from_excel,并在临时表中增加部门Id字段
  2. 通过emp_from_excel和部门表联查补全部门Id
  3. 人工核验一下,没问题的话。在将临时表temp_from_excel中的数据select insert into 大表中
智客工坊 | 园豆:1415 (小虾三级) | 2022-01-12 21:36
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册