nodejs,根据前端字段生成mysql更新代码

使用场景:

当前端修改数据提交,完整的对象字段时,因为要检测id是否重复了,或者名称是否重复时,mysql的UPDATE就不能写死,以下为动态根据前端提交的对象更新UPDATE代码


async function checkAndDeleteIfExists(formData, field, propName) {
// 删除重复的字段
    const exists = await checkDataExists('image_hosting', field, formData[propName]); //这一段是我自己封装的查询数据是否存在,使用时请自己封装一个
    if (exists) {
        delete formData[propName]; //如果存在就删除formData里的字段
    }
}
async function ImagesHosting_edit(req, res) {
    const formData = req.body;
    const formDataID = formData.ID
  
    await checkAndDeleteIfExists(formData, 'ID', 'ID');//检测id是否重复,重复删除

//根据formData 生成UPDATE
    const setClause = Object.keys(formData).map(key => `${key} = ?`).join(', ');
    const values = Object.values(formData);

    // 构建 WHERE 子句
    const whereClause = `ID = ?`;
    values.push(formDataID);

    const query = `
        UPDATE
            image_hosting
        SET
            ${setClause}
        WHERE
            ${whereClause};
    `;
    console.log(query); //查看UPDATE是否生成正确
console.log(values);//查看更新的数据是否values生成正确

    return res.status(200).json({ message: 'ImagesHosting_edit测试成功', status: true });
}

评论

  1. Josiah2609
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-15 19:09:52

    Элвис Пресли, безусловно, один из наиболее влиятельных музыкантов в истории. Родившийся в 1935 году, он стал иконой рок-н-ролла благодаря своему харизматичному стилю и неповторимому голосу. Его лучшие песни, такие как “Can’t Help Falling in Love”, “Suspicious Minds” и “Jailhouse Rock”, стали классикой жанра и продолжают восхищать поклонников по всему миру. Пресли также известен своими выдающимися выступлениями и актёрским талантом, что сделало его легендой не только в музыке, но и в кинематографе. Его наследие остается живым и вдохновляет новые поколения артистов. Скачать музыку 2024 года и слушать онлайн бесплатно mp3.

  2. Keegan3497
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-23 1:02:09
  3. Parker1317
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-26 7:32:40
  4. Claire3495
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-27 18:15:27
  5. Shane3994
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-27 20:55:50
  6. Ethan4927
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-28 3:17:05
  7. Florence3264
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-28 5:56:55
  8. Enrique893
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-28 11:27:39
  9. Derrick2753
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-28 11:42:37
  10. Kaylee4294
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-28 14:01:31
  11. Josie1042
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-28 16:05:59
  12. Kaleb3664
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-28 22:39:31
  13. Nora554
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-29 2:19:32
  14. Omar325
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-29 7:11:26
  15. Wade3956
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-29 7:16:26
  16. Norman3820
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-29 8:56:29
  17. Asher175
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-29 11:40:36
  18. Cleo803
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-29 17:45:21
  19. Kason3319
    Windows Chrome 120.0.0.0
    2 月前
    2024-2-29 21:24:37
  20. Sofia572
    Windows Chrome 120.0.0.0
    2 月前
    2024-3-01 2:20:33
  21. Aileen2667
    Windows Chrome 120.0.0.0
    2 月前
    2024-3-01 2:41:48
  22. Emmanuel3141
    Windows Chrome 120.0.0.0
    2 月前
    2024-3-01 4:26:55
  23. Felix4881
    Windows Chrome 120.0.0.0
    2 月前
    2024-3-01 6:52:51
  24. Randall3926
    Windows Chrome 120.0.0.0
    2 月前
    2024-3-01 12:12:29
  25. Kaden1847
    Windows Chrome 120.0.0.0
    2 月前
    2024-3-01 15:13:45
  26. Beth614
    Windows Chrome 120.0.0.0
    2 月前
    2024-3-01 19:32:06
  27. Dalton4304
    Windows Chrome 120.0.0.0
    2 月前
    2024-3-01 19:48:37
  28. Jake3961
    Windows Chrome 120.0.0.0
    2 月前
    2024-3-01 21:04:25
  29. Justin3604
    Windows Chrome 120.0.0.0
    2 月前
    2024-3-01 23:57:25

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇