2014-02-28 2 views
1

Имеет базу данных с различной таблицей. Мне нужно обновить значение String в таблице1.запрос на обновление не работает в базе данных sqlite

У меня есть строка в activity1.And передается значение String в DBhelper из Activity1.Like this.

private void goTokey() { 

     check="premium"; 
     dbHelper=new DBHelper(this); 
     dbHelper.sample(check); 
} 

Я получил значение в DBHelper, и мне нужно обновить это значение в базе данных в таблице1.

DBHelper.class 

public void sample(String prms) { 
     Log.d("DBHELPER SUCCESS", prms); 

     try{ 
      SQLiteDatabase db1 = this.getWritableDatabase(); 
      db1.execSQL("update table1 SET status = '"+prms+"' WHERE id = 1 "); 
     }catch(Exception e){ 
      System.out.println("GET SAMPLE VALUE"+e); 
     } 
    } 

Для ведения DBHelper.class view here

Что случилось с моим синтаксисом?

Я получил исключение, как это некоторые, где из ..

02-28 12:09:45.604: I/System.out(4975): GET SAMPLE VALUEandroid.database.sqlite.SQLiteException: table report already exists (code 1): , while compiling: create table report(level TEXT, topic TEXT, start TEXT, end TEXT, date TEXT) 

Как добиться этого, чтобы обновить значения в базе данных?

+1

разместить свой код класса dbhelper здесь ... вы создали конструктор в классе dbhelper – Vamshi

+0

Да у меня есть проверить его здесь HTTP: // Pastebin .com/fLLwQmsY @Vamshi –

+0

слишком много кода в dbhelper, отдельный другой код из этого класса добавляет только связанный с db код в этом классе ... я чувствую, что где-то вы вызываете создание базы данных и код создания таблицы каждый раз .. – Vamshi

ответ

0

Изменение от этого

public void sample(String prms) { 
     Log.d("DBHELPER SUCCESS", prms); 

     try{ 
      SQLiteDatabase db1 = this.getWritableDatabase(); 
      db1.execSQL("update table1 SET status = '"+prms+"' WHERE id = 1 "); 
     }catch(Exception e){ 
      System.out.println("GET SAMPLE VALUE"+e); 
     } 
    } 

к этому

public void sample(String prms) { 
     Log.d("DBHELPER SUCCESS", prms); 
     try 
     { 
     ContentValues content =new ContentValues(); 
      content.put(STATUS, prms); 
      long l= myDataBase.update(APP_TABLE, content,null, null); 
      System.out.print("HELLO NEW INSER CODE----"+l); 
     } catch(Exception e){ 
      //System.out.println("NO UPDATE IN APPSTATUS"); 
     } 
    } 
Смежные вопросы