2012-03-24 84 views
0
db2.execSQL("Create Table StudentElective1(studentid text UNIQUE, 
    elective1 text ,elective2 text ,year text)"); 
if ((db2.insert("StudentElective1", null, values))!=-1) { 
    Toast.makeText(eigth.this, "Elective Successfully Selected", 2000).show(); 
} else { 
    Toast.makeText(eigth.this, 
     "Insert Error,Elective already selected", 2000).show(); 
} 

如何在插入查詢中指定where條件?在android中的sqlite插入查詢

回答

0

你是指什麼條件。這可能對更新有意義,但插入需要指定所有值。如果你的意思是你想要選擇一些從selection中插入的值,那麼在Android中構建複雜查詢的唯一方法是首先製作選擇然後使用它們的結果。

編輯現在,很明顯你需要更新。這裏是你如何在Android的更新例如:

int yourId = 42; //randomly chosen. you must provide this 
String tableName = "StudentElective1"; 
String whereClause = "_id=?"; 
String [] whereArgs = { String.valueOf(your_id) }; 
db2.insert(tableName, values, whereClause, whereArgs); 

在這裏,我做了_id列在那裏,但你可以做到這一點上無論你想要的。請注意,我沒有指定在whereClause參數直線距離,而是我用的更新方法的第四個參數:它添加上問號的地方參數在where子句中,並做一些逃逸。這是做到這一點的正確方法。

0

你不能插入其中插入使用UPDATE子句來代替。

+0

如何使用更新而不是插入?請說一些例子..剛接觸到android – Suji 2012-03-24 08:44:15

+0

@Suji我修改了我的回答,給出了Android中的update子句的例子 – 2012-03-24 12:32:39

1

所有按鍵都基於表中的列名先前預定義.. 這裏是插入query..id傳遞的結果將顯示憑什麼值..

String areaTyp = "SELECT " + AREA_TYPE + " FROM " 
      + AREA_TYPE_TABLE + " where `" + TYPE + "`=" 
      + id;