0

Android アプリケーションに更新クエリがあります。しかし、それは正しく機能していません。アプリケーションを更新するためのボタンをクリックすると、動作が停止します。コードは次のとおりです-

update.setOnClickListener(new OnClickListener (){

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub

            String feched_name = show_name.getText().toString();
            String get_std_for_update=id_search.getText().toString();
            String get_new_name = id_update.getText().toString();

            if(feched_name.matches("")){
                Toast.makeText(getApplicationContext(), "No Student selected", Toast.LENGTH_LONG).show();

                }

                    else {
                        if(get_new_name.matches("")){
                        Toast.makeText(getApplicationContext(), "New Name is empty", Toast.LENGTH_LONG).show(); 
                        }
                        else{
                            stdDB.execSQL("Update student set name = "+get_new_name + "where id = "+get_std_for_update);    
                            Toast.makeText(getApplicationContext(), "Student's name has been updated", Toast.LENGTH_LONG).show();   
                        }
                    }


            }

           });
4

2 に答える 2

1

以下のクエリを既存のものに置き換えます。

stdDB.execSQL("Update student set name = '"+get_new_name + "' where id = "+get_std_for_update); 

名前とスペースを一重引用符で囲みます。

お役に立てれば。

于 2013-07-18T06:26:17.433 に答える
0

試す

stdDB.execSQL("Update student set name = '"+get_new_name + "' where id = "+get_std_for_update);

また

stdDB.execSQL("Update student set name = \""+get_new_name + "\" where id = "+get_std_for_update);

引用符を追加し、where 句の後にスペースを追加したことに注意してください。

于 2013-07-18T06:25:25.717 に答える