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') })
浙公网安备 33010602011771号