Java 类android.database.sqlite.SQLiteException 实例源码

项目:PeSanKita-android    文件:ApnDatabase.java   
private ApnDatabase(final Context context) throws IOException {
  this.context = context;

  File dbFile = context.getDatabasePath(DATABASE_NAME);

  if (!dbFile.getParentFile().exists() && !dbFile.getParentFile().mkdir()) {
    throw new IOException("couldn't make databases directory");
  }

  Util.copy(context.getAssets().open(ASSET_PATH, AssetManager.ACCESS_STREAMING),
            new FileOutputStream(dbFile));

  try {
    this.db = SQLiteDatabase.openDatabase(context.getDatabasePath(DATABASE_NAME).getPath(),
                                          null,
                                          SQLiteDatabase.OPEN_READONLY | SQLiteDatabase.NO_LOCALIZED_COLLATORS);
  } catch (SQLiteException e) {
    throw new IOException(e);
  }
}
项目:q-mail    文件:MigrationTo45.java   
public static void changeThreadingIndexes(SQLiteDatabase db) {
    try {
        db.execSQL("DROP INDEX IF EXISTS msg_empty");
        db.execSQL("CREATE INDEX IF NOT EXISTS msg_empty ON messages (empty)");

        db.execSQL("DROP INDEX IF EXISTS msg_thread_root");
        db.execSQL("CREATE INDEX IF NOT EXISTS msg_thread_root ON messages (thread_root)");

        db.execSQL("DROP INDEX IF EXISTS msg_thread_parent");
        db.execSQL("CREATE INDEX IF NOT EXISTS msg_thread_parent ON messages (thread_parent)");
    } catch (SQLiteException e) {
        if (!e.getMessage().startsWith("duplicate column name:")) {
            throw e;
        }
    }
}
项目:sealtalk-android-master    文件:RongDatabaseDriver.java   
public Database.ExecuteSQLResponse executeSQL(String databaseName, String query, ExecuteResultHandler<Database.ExecuteSQLResponse> handler)
        throws SQLiteException {
    Util.throwIfNull(query);
    Util.throwIfNull(handler);
    SQLiteDatabase database = openDatabase(databaseName);
    try {
        String firstWordUpperCase = getFirstWord(query).toUpperCase();
        switch (firstWordUpperCase) {
            case "UPDATE":
            case "DELETE":
                return executeUpdateDelete(database, query, handler);
            case "INSERT":
                return executeInsert(database, query, handler);
            case "SELECT":
            case "PRAGMA":
            case "EXPLAIN":
                return executeSelect(database, query, handler);
            default:
                return executeRawQuery(database, query, handler);
        }
    } finally {
        database.close();
    }
}
项目:q-mail    文件:LockableDatabase.java   
/**
 *
 * @throws UnavailableStorageException
 */
private void openOrCreateDataspace() throws UnavailableStorageException {

    lockWrite();
    try {
        final File databaseFile = prepareStorage(mStorageProviderId);
        try {
            doOpenOrCreateDb(databaseFile);
        } catch (SQLiteException e) {
            // TODO handle this error in a better way!
            Timber.w(e, "Unable to open DB %s - removing file and retrying", databaseFile);
            if (databaseFile.exists() && !databaseFile.delete()) {
                Timber.d("Failed to remove %s that couldn't be opened", databaseFile);
            }
            doOpenOrCreateDb(databaseFile);
        }
        if (mDb.getVersion() != mSchemaDefinition.getVersion()) {
            mSchemaDefinition.doDbUpgrade(mDb);
        }
    } finally {
        unlockWrite();
    }
}
项目:youkes_browser    文件:BrowserActivity.java   
public boolean getSystemBrowser() {
    Cursor c = null;
    String[] columns = new String[] { "url", "title" };
    boolean browserFlag;
    try {

        //Uri bookmarks = Browser.BOOKMARKS_URI;
        //c = getContentResolver().query(bookmarks, columns, null, null, null);
    } catch (SQLiteException | IllegalStateException | NullPointerException e) {
        e.printStackTrace();
    }

    if (c != null) {
        Log.d("Browser", "System Browser Available");
        browserFlag = true;
    } else {
        Log.e("Browser", "System Browser Unavailable");
        browserFlag = false;
    }
    if (c != null) {
        c.close();
    }
    mPreferences.setSystemBrowserPresent(browserFlag);
    return browserFlag;
}
项目:yyox    文件:KF5SDKtoHelper.java   
/**
 * @throws SQLiteException
 */
public void openDatabase() throws SQLiteException {

    openHelper = new DBOpenHelper(context, MD5Utils.GetMD5Code("kf5_ticket_" + SPUtils.getUserId()) + ".db", null, VERSION);
    try {
        db = openHelper.getWritableDatabase();
    } catch (SQLiteException e) {
        e.printStackTrace();
        db = openHelper.getReadableDatabase();
    }
    boolean isTableExit = tableIsExist(openHelper, DB_TABLE);
    if (!isTableExit) {
        db.execSQL(DB_CREATE);
    }

}
项目:sealtalk-android-master    文件:RongDatabaseDriver.java   
public List<String> getTableNames(String databaseName)
        throws SQLiteException {
    SQLiteDatabase database = openDatabase(databaseName);
    try {
        Cursor cursor = database.rawQuery("SELECT name FROM sqlite_master WHERE type IN (?, ?)",
                new String[]{"table", "view"});
        try {
            List<String> tableNames = new ArrayList<String>();
            while (cursor.moveToNext()) {
                tableNames.add(cursor.getString(0));
            }
            return tableNames;
        } finally {
            cursor.close();
        }
    } finally {
        database.close();
    }
}
项目:MyCalendar    文件:DBHelper.java   
/**
 * @param isGetAll   true if want to get all subject
 * @param teacher_id Integer
 * @return {@link ArrayList<Subject>}
 * @throws NullObjectException if connect to database fail or day_start after day_end
 */
public ArrayList<Subject> getSubjectList(Boolean isGetAll, @Nonnegative Integer teacher_id) throws NullObjectException {
    SQLiteDatabase db;
    try {
        db = this.getReadableDatabase();
    } catch (SQLiteException e) {
        Log.d(TAG, "getSubjectList error: " + e.toString());
        throw new NullObjectException(mDBStringHelper.getDBString(DATABASE_CODE.CONNECT_FAIL));
    }

    String query;
    if (isGetAll) {
        query = "SELECT * FROM " + TABLE_SUBJECTS;
    } else if (teacher_id != null) {
        query = "SELECT * FROM " + TABLE_SUBJECTS + " WHERE " + Teacher_ID + " = " + teacher_id;
    } else {
        return new ArrayList<>();
    }
    return getSubjectListByQuery(query, db);
}
项目:MyCalendar    文件:DBHelper.java   
/**
 * @param subject_id   Integer
 * @param subject_name String
 * @return Subject
 * @throws NullObjectException if connect to database fail or not found subject
 */
public Subject getSubject(@Nonnegative @Nullable Integer subject_id, @Nullable String subject_name) throws NullObjectException {
    SQLiteDatabase db;
    try {
        db = this.getReadableDatabase();
    } catch (SQLiteException e) {
        Log.d(TAG, "getSubject error:" + e.toString());
        throw new NullObjectException(mDBStringHelper.getDBString(DATABASE_CODE.CONNECT_FAIL));
    }

    String query;
    if (subject_id != null) {
        query = "SELECT * FROM " + TABLE_SUBJECTS + " WHERE " + Subjects_ID + " = " + subject_id;
    } else if (subject_name != null) {
        query = "SELECT * FROM " + TABLE_SUBJECTS + " WHERE " + Subjects_Name + " = '" + subject_name + "'";
    } else {
        Log.d(TAG, "getSubject error: Not found subject");
        throw new NullObjectException(mDBStringHelper.getDBString(DATABASE_CODE.NOT_FOUND_SUBJECT));
    }
    return getSubjectByQuery(query, db);
}
项目:MyCalendar    文件:DBHelper.java   
/**
 * Delete a subject
 *
 * @param subject_id subject id
 * @return DATABASE_CODE
 */
public DATABASE_CODE deleteSubject(@Nonnegative int subject_id) {
    SQLiteDatabase db;
    try {
        db = this.getWritableDatabase();
    } catch (SQLiteException e) {
        Log.d(TAG, "deleteSubject error: " + e.toString());
        return DATABASE_CODE.CONNECT_FAIL;
    }

    String whereClause = Subjects_ID + " = " + subject_id;

    if (db.delete(TABLE_SUBJECTS, whereClause, null) != 0) {
        Log.d(TAG, "deleteSubject success");
        return DATABASE_CODE.DELETE_SUBJECT_SUCCESS;
    }
    Log.d(TAG, "deleteSubject error");
    return DATABASE_CODE.DELETE_SUBJECT_FAIL;
}
项目:MyCalendar    文件:DBHelper.java   
/**
 * @param repeat_id   Integer
 * @param repeat_name String
 * @return Repeat
 * @throws NullObjectException if connect to database fail or not found repeat
 */
public Repeat getRepeat(@Nonnegative Integer repeat_id, String repeat_name) throws NullObjectException {
    SQLiteDatabase db;
    try {
        db = this.getReadableDatabase();
    } catch (SQLiteException e) {
        Log.d(TAG, "getRepeat error: " + e.toString());
        throw new NullObjectException(mDBStringHelper.getDBString(DATABASE_CODE.CONNECT_FAIL));
    }
    String query;
    if (repeat_id != null) {
        query = "SELECT *  FROM " + TABLE_REPEAT + " WHERE " + Repeat_ID + " = " + repeat_id;
    } else if (repeat_name != null) {
        query = "SELECT *  FROM " + TABLE_REPEAT + " WHERE " + Repeat_Name + " = '" + repeat_name + "'";
    } else {
        Log.d(TAG, "getRepeat error: Not found repeat");
        throw new NullObjectException(mDBStringHelper.getDBString(DATABASE_CODE.NOT_FOUND_REPEAT));
    }
    return getRepeatByQuery(query, db);
}
项目:MyCalendar    文件:DBHelper.java   
/**
 * @param subject_id Integer
 * @return {@link ArrayList<WeekLesson>}
 * @throws NullObjectException if connect database fail or day_start after day_end
 */
public ArrayList<WeekLesson> getWeekLessonList(Integer subject_id) throws NullObjectException {
    SQLiteDatabase db;
    try {
        db = this.getReadableDatabase();
    } catch (SQLiteException e) {
        Log.d(TAG, "getWeekLessonList error: " + e.toString());
        throw new NullObjectException(mDBStringHelper.getDBString(DATABASE_CODE.CONNECT_FAIL));
    }

    String query;
    if (subject_id != null) {
        query = "SELECT * FROM " + TABLE_WEEK_LESSON + " WHERE " + Subjects_ID + " = " + subject_id;
    } else {
        query = "SELECT * FROM " + TABLE_WEEK_LESSON;
    }
    return getWeekLessonListByQuery(query, db);
}
项目:KBUnitTest    文件:ShadowDatabaseUtils.java   
/**
 * Prints the contents of a Cursor's current row to a StringBuilder.
 *
 * @param cursor the cursor to print
 * @param sb     the StringBuilder to print to
 */
public static void dumpCurrentRow(Cursor cursor, StringBuilder sb) {
    String[] cols = cursor.getColumnNames();
    sb.append("" + cursor.getPosition() + " {\n");
    int length = cols.length;
    for (int i = 0; i < length; i++) {
        String value;
        try {
            value = cursor.getString(i);
        } catch (SQLiteException e) {
            // assume that if the getString threw this exception then the column is not
            // representable by a string, e.g. it is a BLOB.
            value = "<unprintable>";
        }
        sb.append("   " + cols[i] + '=' + value + "\n");
    }
    sb.append("}\n");
}
项目:YuiHatano    文件:ShadowDatabaseUtils.java   
private static final void readExceptionFromParcel(Parcel reply, String msg, int code) {
    switch (code) {
        case 2:
            throw new IllegalArgumentException(msg);
        case 3:
            throw new UnsupportedOperationException(msg);
        case 4:
            throw new SQLiteAbortException(msg);
        case 5:
            throw new SQLiteConstraintException(msg);
        case 6:
            throw new SQLiteDatabaseCorruptException(msg);
        case 7:
            throw new SQLiteFullException(msg);
        case 8:
            throw new SQLiteDiskIOException(msg);
        case 9:
            throw new SQLiteException(msg);
        case 11:
            throw new OperationCanceledException(msg);
        default:
            reply.readException(code, msg);
    }
}
项目:MyCalendar    文件:DBHelper.java   
/**
 * @param location_id   Integer
 * @param location_name Integer
 * @return Location
 * @throws NullObjectException if connect to database fail or not found location
 */
public Location getLocation(@Nonnegative Integer location_id, String location_name) throws NullObjectException {
    SQLiteDatabase db;
    try {
        db = this.getReadableDatabase();
    } catch (SQLiteException e) {
        Log.d(TAG, "getLocation error: " + e.toString());
        throw new NullObjectException(mDBStringHelper.getDBString(DATABASE_CODE.CONNECT_FAIL));
    }

    String selectQuery;
    if (location_id != null) {
        selectQuery = "SELECT *  FROM " + TABLE_LOCATION + " WHERE " + Location_ID + " = " + location_id;
    } else if (location_name != null) {
        selectQuery = "SELECT *  FROM " + TABLE_LOCATION + " WHERE " + Location_Name + " = '" + location_name + "'";
    } else {
        Log.d(TAG, "getLocation error: Not found location");
        throw new NullObjectException(mDBStringHelper.getDBString(DATABASE_CODE.NOT_FOUND_LOCATION));
    }
    return getLocationByQuery(selectQuery, db);
}
项目:MyCalendar    文件:DBHelper.java   
/**
 * @param location_id location_id
 * @return {@link DATABASE_CODE#CONNECT_FAIL},{@link DATABASE_CODE#DELETE_LOCATION_SUCCESS},{@link DATABASE_CODE#DELETE_LOCATION_FAIL}
 */
public DATABASE_CODE deleteLocation(@Nonnegative int location_id) {
    SQLiteDatabase db;
    try {
        db = this.getWritableDatabase();
    } catch (SQLiteException e) {
        Log.d(TAG, "deleteLocation error: " + e.toString());
        return DATABASE_CODE.CONNECT_FAIL;
    }

    String whereClause = Location_ID + " = " + location_id;

    //Deleting a record
    if (db.delete(TABLE_LOCATION, whereClause, null) != 0) {
        Log.d(TAG, "deleteLocation success");
        return DATABASE_CODE.DELETE_LOCATION_SUCCESS;
    }
    Log.d(TAG, "deleteLocation error");
    return DATABASE_CODE.DELETE_LOCATION_FAIL;
}
项目:jackknife    文件:Transaction.java   
public static boolean execute(Worker worker) {
    SQLiteDatabase db = Orm.getDatabase();
    db.beginTransaction();
    try {
        boolean isOk = worker.doTransition(db);
        if (isOk) {
            db.setTransactionSuccessful();
        }
        return isOk;
    } catch(SQLiteException e) {
        e.printStackTrace();
    } finally {
        db.endTransaction();
    }
    return false;
}
项目:MyCalendar    文件:DBHelper.java   
/**
 * @param day_lesson_id day_lesson_id
 * @return {@link DATABASE_CODE#CONNECT_FAIL}, {@link DATABASE_CODE#DELETE_DAY_LESSON_SUCCESS}
 * ,{@link DATABASE_CODE#DELETE_DAY_LESSON_FAIL}
 */
public DATABASE_CODE deleteDayLesson(int day_lesson_id) {
    SQLiteDatabase db;
    try {
        db = this.getWritableDatabase();
    } catch (SQLiteException e) {
        Log.d(TAG, "deleteDayLesson error: " + e.toString());
        return DATABASE_CODE.CONNECT_FAIL;
    }

    String whereClause = DayLesson_ID + " = " + day_lesson_id;

    if (db.delete(TABLE_DAY_LESSON, whereClause, null) != 0) {
        Log.d(TAG, "deleteDayLesson success");
        return DATABASE_CODE.DELETE_DAY_LESSON_SUCCESS;
    }

    Log.d(TAG, "deleteDayLesson error");
    return DATABASE_CODE.DELETE_DAY_LESSON_FAIL;
}
项目:browser    文件:BrowserActivity.java   
public boolean getSystemBrowser() {
    Cursor c = null;
    String[] columns = new String[] { "url", "title" };
    boolean browserFlag;
    try {

        //Uri bookmarks = Browser.BOOKMARKS_URI;
        //c = getContentResolver().query(bookmarks, columns, null, null, null);
    } catch (SQLiteException | IllegalStateException | NullPointerException e) {
        e.printStackTrace();
    }

    if (c != null) {
        Log.d("Browser", "System Browser Available");
        browserFlag = true;
    } else {
        Log.e("Browser", "System Browser Unavailable");
        browserFlag = false;
    }
    if (c != null) {
        c.close();
    }
    mPreferences.setSystemBrowserPresent(browserFlag);
    return browserFlag;
}
项目:gitio    文件:SeanDBHelper.java   
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    switch (oldVersion) {
        case 0:
            try {
                db.execSQL("CREATE TABLE main.history " +
                        "(_id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, " +
                        "url TEXT NOT NULL, " +
                        "code TEXT NOT NULL," +
                        "date INTEGER NOT NULL)");

                db.execSQL("CREATE TABLE main.params " +
                        "(_id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, " +
                        "kind TEXT NOT NULL, " +
                        "value TEXT)");
            } catch (SQLiteException e) {
                Log.e("db", "onUpgrade", e);
            }
    }
}
项目:AIMSICDL    文件:AIMSICDDbAdapter.java   
/**
 * Check if the database already exist to avoid re-copying the file each time you open the application.
 *
 * ToDo: NOTE:  This is a dumb check, as it currently only tries to open it.
 *              It may be other reasons why it can't be opened even if it already exists.
 *
 * @return true if it exists, false if it doesn't
 */
private boolean checkDataBase() {

    SQLiteDatabase checkDB = null;
    try {
        Log.i(TAG, mTAG + "Checking if DB exists...");
        checkDB = SQLiteDatabase.openDatabase(mDatabasePath, null, SQLiteDatabase.OPEN_READONLY);
    } catch (SQLiteException e) {
        Log.i(TAG, mTAG + "SQL Exception! Database can\'t be opened: " + e);
        //Log.i(TAG, mTAG + "Database not yet created: " + e);
    }

    if (checkDB != null) {
        checkDB.close();
        Log.i(TAG, mTAG + "OK (found)");
        return true;
    }
    Log.i(TAG, mTAG + "Database probably not yet created.");
    return false;
}
项目:Pocket-Plays-for-Twitch    文件:SubscriptionsDbHelper.java   
private ArrayList<Integer> getUsersNotToNotify(SQLiteDatabase db) throws SQLiteException {
    String query = "SELECT * FROM " + SubscriptionsDbHelper.TABLE_NAME + " WHERE " + SubscriptionsDbHelper.COLUMN_NOTIFY_WHEN_LIVE + "=" + 0 + ";";
    Cursor cursor = db.rawQuery(query, null);

    ArrayList<Integer> usersToNotify = new ArrayList<>();

    while(cursor.moveToNext()) {
        int idPosition = cursor.getColumnIndex(SubscriptionsDbHelper.COLUMN_ID);
        int userId = cursor.getInt(idPosition);

        usersToNotify.add(userId);
    }

    cursor.close();

    return usersToNotify;
}
项目:KBUnitTest    文件:ShadowDatabaseUtils.java   
private static final void readExceptionFromParcel(Parcel reply, String msg, int code) {
    switch (code) {
        case 2:
            throw new IllegalArgumentException(msg);
        case 3:
            throw new UnsupportedOperationException(msg);
        case 4:
            throw new SQLiteAbortException(msg);
        case 5:
            throw new SQLiteConstraintException(msg);
        case 6:
            throw new SQLiteDatabaseCorruptException(msg);
        case 7:
            throw new SQLiteFullException(msg);
        case 8:
            throw new SQLiteDiskIOException(msg);
        case 9:
            throw new SQLiteException(msg);
        case 11:
            throw new OperationCanceledException(msg);
        default:
            reply.readException(code, msg);
    }
}
项目:weex-3d-map    文件:HistoryManager.java   
public void trimHistory() {
  SQLiteOpenHelper helper = new DBHelper(activity);
  SQLiteDatabase db = null;
  Cursor cursor = null;
  try {
    db = helper.getWritableDatabase();      
    cursor = db.query(DBHelper.TABLE_NAME,
                      ID_COL_PROJECTION,
                      null, null, null, null,
                      DBHelper.TIMESTAMP_COL + " DESC");
    cursor.move(MAX_ITEMS);
    while (cursor.moveToNext()) {
      String id = cursor.getString(0);
      Log.i(TAG, "Deleting scan history ID " + id);
      db.delete(DBHelper.TABLE_NAME, DBHelper.ID_COL + '=' + id, null);
    }
  } catch (SQLiteException sqle) {
    // We're seeing an error here when called in CaptureActivity.onCreate() in rare cases
    // and don't understand it. First theory is that it's transient so can be safely ignored.
    Log.w(TAG, sqle);
    // continue
  } finally {
    close(cursor, db);
  }
}
项目:letv    文件:LiveBookFragment.java   
public void onLoadFinished(Loader<Cursor> loader, Cursor cursor) {
    if (cursor != null) {
        Set<String> mBookedPrograms = new HashSet();
        while (cursor.moveToNext()) {
            try {
                int idx = cursor.getColumnIndexOrThrow(Field.MD5_ID);
                if (idx != -1) {
                    mBookedPrograms.add(cursor.getString(idx));
                }
            } catch (SQLiteException e) {
                e.printStackTrace();
                return;
            }
        }
        if (this.mAdapter != null) {
            this.mAdapter.setBookedPrograms(mBookedPrograms);
        }
    }
}
项目:nifi-android-s2s    文件:SQLiteDataPacketIterator.java   
public void transactionFailed() throws SQLiteIOException {
    close();
    SQLiteDatabase writableDatabase = siteToSiteDB.getWritableDatabase();
    writableDatabase.beginTransaction();
    try {
        ContentValues contentValues = new ContentValues();
        contentValues.putNull(DATA_PACKET_QUEUE_TRANSACTION_COLUMN);
        writableDatabase.update(DATA_PACKET_QUEUE_TABLE_NAME, contentValues, DATA_PACKET_QUEUE_TRANSACTION_COLUMN + " = ?", new String[] {Long.toString(transactionId)});
        writableDatabase.delete(DATA_PACKET_QUEUE_TRANSACTIONS_TABLE_NAME, DATA_PACKET_QUEUE_TRANSACTION_COLUMN + " = ?", new String[] {Long.toString(transactionId)});
        writableDatabase.setTransactionSuccessful();
    } catch (SQLiteException e) {
        throw new SQLiteIOException("Unable to clear transaction from failed data packets.", e);
    } finally {
        writableDatabase.endTransaction();
        writableDatabase.close();
    }
}
项目:Android-Bubble-Game    文件:DataBaseHelper.java   
/**
 * Check if the database already exist to avoid re-copying the file each time you open the
 * application.
 *
 * @return true if it exists, false if it doesn't
 */
private boolean checkDataBase() {
  SQLiteDatabase checkDB = null;
  try {
    String myPath = DB_PATH + DB_NAME;
    checkDB = SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READWRITE);
  } catch (SQLiteException e) {
    // database doesn't exist yet.
  }
  if (checkDB != null) {
    checkDB.close();
  }
  return checkDB != null ? true : false;
}
项目:Inflix    文件:FavoritesProvider.java   
@Nullable
@Override
public Uri insert(@NonNull Uri uri, @Nullable ContentValues values)
        throws UnsupportedOperationException, SQLiteException {
    final SQLiteDatabase db = mDbHelper.getWritableDatabase();
    int match = sUriMatcher.match(uri);
    long res = -1;
    switch (match) {
        case FAVORITES_WITH_ID:
            List<String> pathSegments = uri.getPathSegments();
            if (pathSegments != null && pathSegments.size() > 2) {
                String type = pathSegments.get(1);
                String id = pathSegments.get(2);

                if (values != null) {
                    values.put(MediaEntry.COLUMN_IS_FAVORED, 1);
                    values.put(MediaEntry.COLUMN_MEDIA_TYPE, type);
                    int numRows = db.update(MediaEntry.TABLE_NAME, values,
                            MediaEntry.COLUMN_MEDIA_TYPE + " = ? AND " +
                                    MediaEntry.COLUMN_MEDIA_ID + " = ? ", new String[]{type, id});
                    if (numRows <= 0) {
                        res = db.insert(MediaEntry.TABLE_NAME, null, values);
                        if (res == -1) {
                            throw new SQLiteException("Failed to insert record: " + uri);
                        }
                    }
                }
            }
            break;
        default:
            throw new UnsupportedOperationException("Unknown uri: " + uri);
    }
    mContext.getContentResolver().notifyChange(uri, null);
    return ContentUris.withAppendedId(uri, res);
}
项目:q-mail    文件:MigrationTo30.java   
public static void addDeletedColumn(SQLiteDatabase db) {
    try {
        db.execSQL("ALTER TABLE messages ADD deleted INTEGER default 0");
    } catch (SQLiteException e) {
        if (!e.toString().startsWith("duplicate column name: deleted")) {
            throw e;
        }
    }
}
项目:q-mail    文件:MigrationTo36.java   
public static void addAttachmentsContentIdColumn(SQLiteDatabase db) {
    try {
        db.execSQL("ALTER TABLE attachments ADD content_id TEXT");
    } catch (SQLiteException e) {
        Timber.e("Unable to add content_id column to attachments");
    }
}
项目:q-mail    文件:MigrationTo40.java   
public static void addMimeTypeColumn(SQLiteDatabase db) {
    try {
        db.execSQL("ALTER TABLE messages ADD mime_type TEXT");
    } catch (SQLiteException e) {
        Timber.e("Unable to add mime_type column to messages");
    }
}
项目:AndiCar    文件:DB.java   
@SuppressWarnings("BooleanMethodIsAlwaysInverted")
private boolean columnExists(SQLiteDatabase db, String table, String column) {
    String testSql = "SELECT " + column + " FROM " + table + " WHERE 1=2";
    try {
        db.rawQuery(testSql, null);
        return true;
    }
    catch (SQLiteException e) {
        return false;
    }
}
项目:q-mail    文件:MigrationTo44.java   
public static void addMessagesThreadingColumns(SQLiteDatabase db) {
    try {
        db.execSQL("ALTER TABLE messages ADD thread_root INTEGER");
        db.execSQL("ALTER TABLE messages ADD thread_parent INTEGER");
        db.execSQL("ALTER TABLE messages ADD normalized_subject_hash INTEGER");
        db.execSQL("ALTER TABLE messages ADD empty INTEGER");
    } catch (SQLiteException e) {
        if (!e.getMessage().startsWith("duplicate column name:")) {
            throw e;
        }
    }
}
项目:Pocket-Plays-for-Twitch    文件:SubscriptionsDbHelper.java   
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    try {
        if (newVersion == 7) {
            new Settings(mContext).setUsersNotToNotifyWhenLive(getUsersNotToNotify(db));
        }
    } catch (SQLiteException e) {
        e.printStackTrace();
    }


    db.execSQL(SQL_DELETE_ENTRIES);
    onCreate(db);
    //db.close();
}
项目:q-mail    文件:MigrationTo35.java   
public static void updateRemoveXNoSeenInfoFlag(SQLiteDatabase db) {
    try {
        db.execSQL("update messages set flags = replace(flags, 'X_NO_SEEN_INFO', 'X_BAD_FLAG')");
    } catch (SQLiteException e) {
        Timber.e(e, "Unable to get rid of obsolete flag X_NO_SEEN_INFO");
    }
}
项目:AndiCar    文件:DB.java   
public void close() {
    try {
        mDbHelper.close();
        mDbHelper = null;
        mDb.close();
        mDb = null;
    }
    catch (SQLiteException ignored) {
    }
}
项目:GitHub    文件:UpdateUsingUpdateMethodTest.java   
public void testUpdateWithStaticUpdateButWrongClass() {
    ContentValues values = new ContentValues();
    values.put("TEACHERNAME", "Toy");
    try {
        DataSupport.update(Object.class, values, teacher.getId());
    } catch (SQLiteException e) {
    }
}
项目:GitHub    文件:UpdateUsingUpdateMethodTest.java   
public void testUpdateWithStaticUpdateButWrongColumn() {
    ContentValues values = new ContentValues();
    values.put("TEACHERYEARS", 13);
    try {
        DataSupport.update(Teacher.class, values, teacher.getId());
        fail("no such column: TEACHERYEARS");
    } catch (SQLiteException e) {
    }
}
项目:GitHub    文件:RobustSQLiteOpenHelper.java   
@Override
public final void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    try {
        onRobustUpgrade(db, oldVersion, newVersion);
    } catch (SQLiteException e) {
        // The database has entered an unknown state. Try to recover.
        try {
            regenerateTables(db);
        } catch (SQLiteException e2) {
            dropAndCreateTables(db);
        }
    }
}
项目:GitHub    文件:PubkeyDatabase.java   
@Override
public void onRobustUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) throws SQLiteException {
        switch (oldVersion) {
        case 1:
            db.execSQL("ALTER TABLE " + TABLE_PUBKEYS
                    + " ADD COLUMN " + FIELD_PUBKEY_CONFIRMUSE + " INTEGER DEFAULT 0");
            db.execSQL("ALTER TABLE " + TABLE_PUBKEYS
                    + " ADD COLUMN " + FIELD_PUBKEY_LIFETIME + " INTEGER DEFAULT 0");
        }
}