我正在创建一个数据库,并像这样插入一行:
/* Add two DataSets to the Table. */
myDB.execSQL("INSERT INTO "
+ MY_DATABASE_TABLE
+ " (LastName, FirstName, Country, Age)"
+ " VALUES ('Gramlich', 'Nicolas', 'Germany', 20);");
myDB.execSQL("INSERT INTO "
+ MY_DATABASE_TABLE
+ " (LastName, FirstName, Country, Age)"
+ " VALUES ('Doe', 'John', 'US', 34);");
关于上面的代码,我有两个问题:
如何禁止重复记录?我想在插入时检查传入的数据。我怎样才能做到这一点?我应该使用
IF NOT EXISTS
吗?如何检查该数据库是否可用?到目前为止,没有任何成功,我尝试过:
private static String DB_PATH = "/data/data/YOUR_PACKAGE/databases/myDBName"; private static String DB_NAME = "myDBName"; private boolean checkDataBase() { SQLiteDatabase checkDB = null; try { checkDB = SQLiteDatabase.openDatabase(DB_PATH, null, SQLiteDatabase.OPEN_READONLY); checkDB.close(); } catch (SQLiteException e) { // database doesn't exist yet. } return checkDB != null ? true : false; }
关于如何实现这一目标的任何建议?