2017-04-26 26 views
2

這裏myObject是一個對象,我想根據鍵數更新我的表myObject包含。 myObject中的鍵數可以是動態的,在這種情況下如何更新表?根據對象的動態鍵更新表

var myObject ={ 
    x1 : 0, 
    x2 :1 
} 

var stmt =""UPDATE tb_data SET x1 = ?, x2 = ?....xn =?"; 

回答

0

試圖通過每個對象的使用Object.keys(myObject的).forEach循環,建立你需要每次的字符串。

var myObject ={ 
     x1 : 0, 
     x2 :1 
    } 

    var stmnt = ''; 

    Object.keys(myObject).forEach((val) => { 
     stmnt += val; 
    }) 
+0

UPDATE tb_data SET X1 =?,X2 =?,如何在最後關鍵的結尾處,刪除這個多餘的逗號@ jsw324 – art12345

+0

你只需要建立你的字符串但是你希望它看起來。對於你的例子,我會使用這樣的'var stmnt ='UPDATE tb_data'; Object.keys(myObject的).forEach((VAL)=> { stmnt + = VAL + ':' + myObject的[VAL] +'「;} ) ' – jsw324

+0

@AryanKanwar如果該答案的幫助下,請標明這是正確的。謝謝! – jsw324

0

提高對jsw324的answer

var myObject ={ 
    x1 : 0, 
    x2 :1 
} 

let stmt ='UPDATE tb_data SET '; 

Object.keys(myObject).forEach((key)=>{ 
    const val = myObject[key]; 
    stmt += `${key} = ${val}, `; 
}) 

stmt = stmt.splitOnLast(',')[0]+';' 
//Stmt = "UPDATE tb_data SET x1=0, x2=1;"