Странные проблемы с sqlite. Не вставлять / обновлять постоянные значения из переменных и аргументов - PullRequest
0 голосов
/ 25 марта 2011

В последнее время у меня было довольно много проблем с базами данных.Моя текущая ситуация такова, что запись не создается со значением, которое я ей сообщаю.Создает «00» вместо «100».Странно то, что это происходит только в эмуляторе Android.Устройство, которое я использую (Driod Incredible), прекрасно работает с тем же кодом.Однако я не смотрел базу данных на телефоне, потому что Eclipse по какой-то причине не открывает папку данных.Я обнаружил это только тогда, когда решил вытащить базу данных из эмулятора (из-за других проблем с sqlite, которые у меня возникли, пожалуйста, посмотрите на мои другие вопросы, если вы разбираетесь в этой области).Я получил принудительное закрытие раньше, чем ожидалось из-за ошибки индексации курсора, размер индекса равен 0. Это потому, что искомое значение равно 100, и оно было создано как 00. Что такое укроп?

public void createEmptyProfile(String SaveSlot) {
 ContentValues initialValues = new ContentValues();
    //ITEM 100
    initialValues.put(ITEM, "100");
    initialValues.put(VALUE1, "100");
    initialValues.put(SAVE_SLOT, SaveSlot);
    initialValues.put(CATEGORY, "S");
    mDb.insert(DATABASE_PUSHERS_TABLE, null, initialValues);
    initialValues.clear();
    //ITEM 99       
    initialValues.put(ITEM, "99");
    initialValues.put(VALUE1, "0");
    initialValues.put(SAVE_SLOT, SaveSlot);
    initialValues.put(CATEGORY, "S");
    mDb.insert(DATABASE_PUSHERS_TABLE, null, initialValues);
    initialValues.clear();
return;

в базе данных есть элемент 99, но элемент 00 вместо 100. Все остальные значения верны.Существует множество предметов.

таблица создания:

"create table profiles (_id integer primary key autoincrement, " +
        "save_slot text not null,item text, value1 text, " +
        "value2 text, category text);"

1 Ответ

0 голосов
/ 26 марта 2011

Я добавил одну цитату, и это исправило ее.

от

initialValues.put(ITEM, "100");

до

initialValues.put(ITEM, "'100'");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...