1. 程式人生 > >sql語句的構造,當where後的條件個數不定,當update set後的更新欄位數不定

sql語句的構造,當where後的條件個數不定,當update set後的更新欄位數不定

問題:在構造sql語句時遇到where後的條件數是不定的(例如:一個引數物件的非空屬性來作為where後的條件);同理:當update table set ...更新欄位數不定。

解決辦法:

1,針對where條件:

例如:sql="select * from tableName where 1=1";

if(a!=null)

sql+=" and id='"+a+"'";

"1=1"為常真的條件,不會影響查詢的結果,且方便了後面條件的構造。(加入沒有1=1 後面拼接sql時“and”的使用會很麻煩)

2:對於給定等值條件的更新語句(例如:Update table set ...where id=2):

可以構造如下:sql="Update table set id=2";

if(a!=null)

sql+=", n='"+a+"'";