Android sqlite проблема - PullRequest
       0

Android sqlite проблема

0 голосов
/ 07 января 2011

Я прочитал несколько учебников и раздел sqlite в книге и применил его, который прекрасно работает.Теперь я испортил это, чтобы попытаться понять это, но теперь это просто заставит закрываться каждый раз, и я не уверен почему.Я перебираю свой код снова и снова, но, возможно, я не могу найти проблему, потому что я новичок в sqlite / database в целом.Мы будем благодарны за любую помощь:

public class Events extends Activity {

private TextView tv;
private DataHelper dh;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    tv = new TextView(this);
    dh = new DataHelper(this);
    dh.deleteAll();
    //dh.addEvent("James");
    //Cursor c = dh.getEvent();
    //startManagingCursor(c);
    //tv.setText(dh.showEvent(c));
    setContentView(tv);
}

}

public class EventsData extends SQLiteOpenHelper {

private static final String DATABASE_NAME = "events.db";
private static final int DATABASE_VERSION = 1;
private static final String DATABASE_CREATE = "CREATE TABLE" + TABLE_NAME + "(" + TITLE + " TEXT)";
private static final String DATABASE_UPGRADE = "DROP TABLE IF EXISTS " + TABLE_NAME;

public EventsData(Context context) {
    super(context, DATABASE_NAME, null, DATABASE_VERSION);
}

@Override
public void onCreate(SQLiteDatabase db) {
    // TODO Auto-generated method stub
    db.execSQL(DATABASE_CREATE);
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    // TODO Auto-generated method stub
    db.execSQL(DATABASE_UPGRADE);
    onCreate(db);
}

}

public class DataHelper {

private Context context;
private SQLiteDatabase db;
private EventsData eventsData;

public DataHelper(Context context) {
    this.context = context;
    eventsData = new EventsData(this.context);
}

public void addEvent(String name) {
    db = eventsData.getWritableDatabase();
    ContentValues cv = new ContentValues();
    cv.put(TITLE, name);
    db.insertOrThrow(TABLE_NAME, null, cv);
}

}

Комментируя addEvent (), вы запуститеПриложение в порядке, но когда я раскомментирую его, оно принудительно закрывается.

Ответы [ 2 ]

1 голос
/ 07 января 2011

Быстрый выстрел: после CREATE TABLE.

нет места.
0 голосов
/ 07 января 2011

Вы можете проверить logcat на наличие сообщения об ошибке.Он скажет вам, что вызывает близкую силу.Ссылка на отладку с помощью logcat Отладка в Android с использованием Eclipse

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...