我有一個包含表事件的 postgres 資料庫。我希望用戶能夠通過輸入更新該表的任何一列或多列。以下代碼的問題是,當用戶更新時,例如,列wedding_name 和otherones 沒有收到任何值,我的行在收到新值的列上成功更新。但是,其余的列變空,因為它們沒有接收輸入。所以我希望能夠更新一列,如果可能的話,在不影響未觸及的列的情況下進行單一查詢。謝謝你。
modifyEvent:async(req, res)=>{
try {
const eventId= req.params.eventId
const {weddingName,groom,bride,location,date,}=req.body
const updatedEvent=pool.query('UPDATE events SET wedding_name=$1,bride_name=$2,groom_name=$3,wedding_location=$4,wedding_date=$5 WHERE wedding_id=$6',[
weddingName,bride,groom,location,date,eventId
])
res.json(updatedEvent)
}
catch (error) {
console.log(error.message)
}
}
uj5u.com熱心網友回復:
你可以嘗試這樣的事情:
const updatedEvent=pool.query('UPDATE events SET wedding_name=COALESCE($1, wedding_name), bride_name=COALESCE($2, bride_name), groom_name=COALESCE($3, groom_name), wedding_location=COALESCE($4, wedding_location), wedding_date=COALESCE($5, wedding_date) WHERE wedding_id=$6',[weddingName,bride,groom,location,date,eventId])
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/395789.html
標籤:PostgreSQL的 表达 PG
下一篇:跨多個表查詢不同的電子郵件?
