微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

mongodb中导入表格

1.node安装 导入数据的模块

cnpm i node-xlsx -S

2.实现数据导入 ---- 读取文件信息

var xlsx = require('node-xlsx'); // 数据导入模块
// 导入的文件绝对路径
var xlsxfile = "E:/myapp/product.xlsx"

router.get('/upload', function (req, res, next) {
  // 1.读取文件的信息并且打印
  res.send(xlsx.parse(xlsxfile))
})

3.实现数据导入 ---- 解析需要的数据

router.get('/upload', function (req, res, next) {
  // 1.读取文件的信息并且打印
  // res.send(xlsx.parse(xlsxfile)) // [{}, {}]

  // 2、取数组中的第一个作为第一张表的数据
  var obj = xlsx.parse(xlsxfile)[0]
  // res.send(obj) // {name:'',data:[[],[]]}
  // res.send(obj.data) // [[], [], []] 内层数组就是Excel表格的每一行的数据

  // 3、获取数组的长度,循环遍历数据,组成需要的对象
  var len = obj.data.length
  // 第一条数据是标题  ["品牌","产品名","数量","公司","价格"],下标从1开始
  // 设计一个插入的数据
  var insertData = []
  for (var i = 1; i < len; i++) {
    insertData.push({
      prorid: 'user_' + uuid.v1(),
      proname: obj.data[i][0], //["品牌","产品名","数量","公司","价格"]
      num: obj.data[i][1] * 1,
      brand: obj.data[i][2] * 1,
      company: obj.data[i][3],
      price: obj.data[i][4] + '',
      
    })
  }

})

4.实现数据导入 ---- 插入数据库

sql.insert(Pro, insertData).then(() => {
    res.redirect('/pros')
  })

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐