使用case语句在sqlite中执行我的更新查询

时间:2013-11-11 12:26:22

标签: android sqlite

我在Android应用程序中工作,我在我的应用程序中使用sqllite。我想用包含case语句的查询更新我的sql。请建议我执行此查询的正确解决方案,并返回一个int值以确认表是否已成功更新。

我的查询::

UPDATE TblAgencies SET Selected= CASE WHEN ID=6 THEN 1 ELSE 0 END

3 个答案:

答案 0 :(得分:2)

update TblAgencies set Selected = (ID == 6);会这样做。 至于“更新是否正常工作” - 这是标准的API工作,与查询本身无关。

答案 1 :(得分:1)

我不会为你做编程,但在这里你是如何做的。

int res = db.update(table, values, whereClause, whereArgs);
if(res>0) etc...

答案 2 :(得分:-1)

 try
            {
                database=openOrCreateDatabase("solutiondb", MODE_PRIVATE, null);
                database.execSQL("update patientdetails set name='"+naMe+"',dob='"+DOB+"',gender='"+genDer+"',height="+heiGht+",weight="+weiGht+",bmi="+BMI+",bloodgroup='"+bloodGroup+"',profession='"+proFession+"',address='"+addRess+"',contact="+contactNumber+",smoking='"+smoKing+"',drinking='"+drinKing+"',maritalstatus='"+maritalStatus+"',physician='"+phySican+"' where id="+patientId+"");
                Toast.makeText(PersonalInformationActivity.this, "Your Personal Details Are Saved Successfully", Toast.LENGTH_LONG).show();
                dialog.dismiss();
                intent=new Intent(PersonalInformationActivity.this, PersoxcsdActivity.class);
                intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_CLEAR_TOP);
                startActivity(intent);
                database.close();
            }
            catch(SQLException exception)
            {

            }