Android sqlite数据库在插入时崩溃

时间:2014-07-07 16:01:31

标签: android sqlite

我正在开发一个Android应用程序,它将短信收件箱的内容移动到sqlite数据库。它在某些手机中完美运行,而在其他一些手机中,应用程序在插入几个短信时崩溃并且强制关闭。有人帮助我在确定问题并为我提供适当的补救措施时。

提前致谢

    void addContact(Contact contact) {
    SQLiteDatabase db = this.getWritableDatabase();
    InsertHelper ih = new InsertHelper(db, TABLE_CONTACTS);
/*  ContentValues values = new ContentValues();
    values.put(KEY_NAME, contact.getName()); // Contact Name
    values.put(KEY_PH_NO, contact.getPhoneNumber()); // Contact Phone
    values.put(KEY_DATE, contact.getDate());
    values.put(KEY_PHOTO,contact.getPhotoUri());
    values.put(KEY_REC,contact.getRec());
    // Inserting Row
    db.insert(TABLE_CONTACTS, null, values);
    db.close(); // Closing database connection
    */
    final int greekColumn = ih.getColumnIndex(KEY_NAME);
    final int ionicColumn = ih.getColumnIndex(KEY_PH_NO);
    final int romanColumn = ih.getColumnIndex(KEY_DATE);
    final int sColumn=ih.getColumnIndex(KEY_PHOTO);
    final int yColumn=ih.getColumnIndex(KEY_REC);
    try {

            // ... Create the data for this row (not shown) ...

            // Get the InsertHelper ready to insert a single row
            ih.prepareForInsert();

            // Add the data for each column
            ih.bind(greekColumn,contact.getName());
            ih.bind(ionicColumn,contact.getPhoneNumber());

            ih.bind(romanColumn, contact.getDate());
            ih.bind(sColumn,contact.getPhotoUri());
            ih.bind(yColumn,contact.getRec());


            // Insert the row into the database.
            ih.execute();

    }
    finally {
        ih.close();  
    }
    db.close();

}

这是我执行插入的方式

0 个答案:

没有答案