Проблема с выпуском SQLite

У меня проблема с запросом обновления в sqlite [android]

здесь приведен метод обновления:

public int Updater(String pass, String na, String sur, String cou,String log){
    ContentValues cv=new ContentValues();

    cv.put(colPassword, pass);
    cv.put(colName, na);
    cv.put(colSurn, sur);
    cv.put(colCountry, cou);
    return sqLiteDatabase.update(Usr_TABLE, cv, colLogin+"="+log, new String []{colLogin});   
}

Я получаю ошибку:

Error updating Name=qwewqeq Login=tesg Surname=gfgfg Country=ewrwe Password=dfsdfds using UPDATE USERS SET Name=?, Login=?, Surname=?, Country=?, Password=? WHERE Login=bla

и позже

Завершение курсора, который не был деактивирован или закрыт

НО

Я закрыл все

здесь вызывается обновление:

public void FinishCl(View v){
    sql = new SQLiteAdapter(this);
    editps = (EditText) findViewById(R.id.Pasek);
    edytn = (EditText) findViewById(R.id.wyname);
    editsn = (EditText) findViewById(R.id.wysurname);
    editctry = (EditText) findViewById(R.id.wycountry);
    psw = editps.getText().toString();
    nr= edytn.getText().toString();
    srn = editsn.getText().toString();
    ctr= editctry.getText().toString();
    sql.openToWrite();
    sql.Updater(psw, nr, srn, ctr,"iie");
    sql.close();
    startActivity(new Intent(this,UserPanel.class));
}

проверка метода входа также закрывается:

public void OkCl(View v){
    enterLog = enterLogin.getText().toString();
    enterPass = enterPassword.getText().toString();
    sqa=  new SQLiteAdapter(this);
    sqa.openToRead();
    Log.i("login",enterLog);
    Log.i("password",Login.enterPass);
    if(sqa.logineSelector(enterLog, enterPass)==true){
        Log.i("zwrocilo", "true");
        startActivity(new Intent(this,UserPanel.class));
       sqa.close();
    }
    else if (sqa.logineSelector(enterLog, enterPass)==false){
        sqa.close();
        Log.i("zwrocilo", "false");
        AlertDialog.Builder alertbox = new AlertDialog.Builder(this);
        alertbox.setMessage("Wrong password or login");
        alertbox.setNeutralНОton("Ok", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface arg0, int arg1) {
            }
        });
        alertbox.show();
    }
}
0

1 ответы

Если colLogin - это имя столбца, а log - это его значение, ваши параметры whereClause и whereArgs кажутся перепутались.

Я считаю, что это должно быть

return sqLiteDatabase.update(Usr_TABLE, cv, colLogin+"=?", new String []{log});

или

return sqLiteDatabase.update(Usr_TABLE, cv, colLogin+"="+log, null);

since whereArgs are replacement fили"?" in your whereClause.

1
добавлено
теперь я получаю ошибку: sqlite возвращен: код ошибки = 1, msg = no такой столбец login_name
добавлено автор iie, источник
static final String colLogin = «Вход» - это так. У тебя это было?
добавлено автор iie, источник
результат tis тот же, ошибка: sqlite возвращен: error code = 1, msg = no такой столбец login_name, не могли бы вы объяснить мне, почему в sqlite мы не используем чистые sql-запросы? Запрещено?
добавлено автор iie, источник
colLogin должно сохранять фактическое имя столбца
добавлено автор Vladimir, источник
это странно. как мои предложения приводят к этой ошибке?
добавлено автор Vladimir, источник
если это ваша база данных, вы можете использовать метод rawQuery() developer.android. ком/ссылки/Android/базы данных/SQLite/& hellip;
добавлено автор Vladimir, источник
Mobile Dev Jobs — вакансии и аналитика
Mobile Dev Jobs — вакансии и аналитика
6 187 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению iOS, Android, Xamarin и т.д. ВАЖНО: Правила публикации и правила канала: Ссылка – https://telegra.ph/Pravila-oformleniya-vakansij-i-rezyume-11-09-2

Android Developers
Android Developers
4 476 участник(ов)

Общаемся на темы, посвященным Android-разработке, SDK, Kotlin, Realm и т.д.

Android Architecture
Android Architecture
2 186 участник(ов)

Русскоязычный чат по архитектуре в андроид приложениях. Подробнее: http://telegra.ph/Android-Architecture-12-24

rus-speaking/android
rus-speaking/android
1 705 участник(ов)

Основной чат по Android разработке (вопрос-ответ). ПРАВИЛА: bit.ly/andr-rules. NEWS: bit.ly/AnrdResId ЧАТЫ: Основной: bit.ly/andr-main IDE, сборка, Git, сервисы: bit.ly/andr-tools Оффтоп: bit.ly/andr-offtop Конференции, события: bit.ly/andr-events Вакансии, найм: bit.ly/andr-job Архитектура: bit.ly/andr-patterns Rx: bit.ly/andr-rx Тестирование: bit.ly/andr-test Kotlin: bit.ly/andr-kotlin Хаmarin: bit.ly/andr-xamarin За мат, спам, агрессию, предложения о работе, оффтоп в этом канале - бан на сутки и более ☢☢☢

Android Dev Подкаст
Android Dev Подкаст
1 325 участник(ов)

Комната для обсуждения Android Dev подкаста apptractor.ru/AndroidDev/ Общее обсуждение Android: https://t.me/android_ru Остальные чаты про Android: http://t.me/devChats Наши новости https://t.me/androiddevpodcast_news

SqlCom.ru - Стиль жизни SQL
SqlCom.ru - Стиль жизни SQL
908 участник(ов)

Правила чата - https://t.me/sqlcom/88269 @sqlcom - основной канал (только MS SQL) @sql_ninja - второй канал (SQL вопросы начального уровня и свободное общение) @Gopnegbot - Викторина по SQL Server (наберите в привате /quiz). Предложения в @sql_ninja

Android Guards
Android Guards
602 участник(ов)

Обсуждение любых вопросов касающихся безопасности Android. - Защита системы и приложений - Уязвимости и эксплойты - Вредоносное ПО - Копание в кишках системы и приложений (RE)

Android JOB
Android JOB
466 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению Android (full-time, part-time, remote и разовые подработки)

AndroidDev :: Разработка. It's Android time now!
AndroidDev :: Разработка. It's Android time now!
458 участник(ов)

It's Android time now! Чат разработчиков Android. Вакансии, резюме и информацию о митапах размещать можно. Публикацию скрытой и явной рекламы ваших каналов и сайтов после получения разрешения от @olegushakov

SQL_Ninja
SQL_Ninja
340 участник(ов)

Правила чата - https://t.me/sqlcom/88269 @sqlcom - основной канал (только SQL) @sql_ninja - второй канал (SQL вопросы начального уровня и свободное общение) @Gopnegbot - Викторина по SQL Server (наберите в привате /quiz)

Aandroid Talks!
Aandroid Talks!
212 участник(ов)

Чат об общих вопросах по ОС Android. Чат для разработки под андроид - pro.android: https://t.me/joinchat/AAAAAEKIFKnmRT9cMebb9w

Android Rus
Android Rus
68 участник(ов)