繁体   English   中英

有没有更好的方法在 node.js 的 MYSQL 数据库中插入一行?

[英]Is there any Better way to insert a row into MYSQL database in node.js?

因此,我将使用 mysql2 驱动程序将 Mysql 与节点一起使用。 假设我连续有 25 到 30 个字段,我是否必须在从正文中提取每一列后手动编写每一列。 我目前的方法如下,这里是完整的 controller 以便更好地理解。

exports.registerUser = async (req, res, next) => {
    let errors = validationResult(req)
    if (!errors.isEmpty()) {
        let err = new Error()
        err.errors = errors
        err.status = 400
        next(err)
    }
    console.log('entered')
    let { user_role_id, name, email_id, password,
        mobile_no, work_exp_years, work_exp_month,
        resume, current_location } = req.body

    try {
        let query = `INSERT INTO user_account_details 
        (user_role_id, name, email_id, password, 
            mobile_no, work_exp_years, work_exp_month, 
            resume, current_location) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)`
        let [insertRow] = await mysql.execute(query, [user_role_id, name, email_id, password,
            mobile_no, work_exp_years, work_exp_month,
            resume, current_location])
        if (!insertRow) {
            throw new Error('Insert error')
        }
        return res.status(200).json({ result: insertRow })
    } catch (err) {
        let error = new Error()
        error.errors = err
        next(error)
    }
}

所以,我唯一关心的是我在一行中插入字段的部分,我觉得我写了很多次列名,有没有什么办法可以像 mongoose 一样将正文插入行中?

我知道这已经很晚了,但是由于听起来您是 Mongoose 的粉丝,因此您可以使用为 MySQL 提供类似猫鼬的接口的软件包之一完全抽象出 MySQL 语句。 在 npmjs.com 中搜索“mysql mongoose”。 结果包括@aponica/mysqlgoose-js、mysqloose 和鬣狗。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM