2013-11-12 6 views
1

моих друзей, у меня есть вопрос о SQL заявление, я хочу, чтобы обновить строку с конкретнымиобновление строки в SQLite базы данных

параметров, когда речь идет об одной переменной, это нормально, но теперь мне нужно указать два.

ЗДЕСЬ код:

public void insertMembre(long id,String rm_26ts, int a36, int a37_1, int a38_1_1, 
     int a38_1_2, int a37_2, int a38_2_1, int a38_2_2){ 

       ContentValues values = new ContentValues(); 

        values.put(col_VUE,a37_1); 
        values.put(col_Vue_un ,a38_1_1); 
        values.put(col_Vue_deux, a38_1_2); 

db.update(Membres_de_Menage,values,col_N_Ordre+"="+rm_26ts +_idquest+"="+id, null); 
      } 

У меня есть исключение SQL ошибка: непризнанный маркер

+0

Вы должны всегда использовать параметры SQL, как @krishna ответил! –

ответ

1

Вы должны использовать

db.update(Membres_de_Menage,values,col_N_Ordre+"='"+rm_26ts+"' AND " +_idquest+"="+id, null); 

вместо

db.update(Membres_de_Menage,values,col_N_Ordre+"="+rm_26ts +_idquest+"="+id, null); 
+0

спасибо за ответ, я попробую сейчас :) –

+0

добро пожаловать, дайте мне знать, если это сработает. – Apoorv

+1

Это плохое решение! Необходимо использовать решение @krishna! –

1

Попробуйте ::

Когда вы проверяете несколько параметров, используйте предложение «И» или «ИЛИ», чтобы присоединиться к двум или более условиям.

db.update(Membres_de_Menage,values,col_N_Ordre+"='"+rm_26ts +"' AND " +_idquest+"="+id, null); 

Надеюсь, что это поможет!

+0

Я ценю вашу помощь, я попробую и скажу вам результаты :) –

+0

Это плохое решение! Необходимо использовать решение @krishna! –

+1

@LS_dev :: Оба решения работают одинаково. так что это до решения, какое решение использовать. –

1

Попробуйте

db.update(Membres_de_Menage, values, col_N_Ordre + " = ? AND " + _idquest + " = ?", new String[] {rm_26ts, id}); 
Смежные вопросы