Java 如何检查数据库中是否存在记录?
我正在用Eclipse开发一个应用程序。我想检查这些值是否已插入数据库,以防止再次插入。如果尚未插入该值,则我希望使用Java 如何检查数据库中是否存在记录?,java,android,database,eclipse,sqlite,Java,Android,Database,Eclipse,Sqlite,我正在用Eclipse开发一个应用程序。我想检查这些值是否已插入数据库,以防止再次插入。如果尚未插入该值,则我希望使用mySQLiteAdapter.insert()填充数据库记录的方法,如下所示: mySQLiteAdapter.insert("1"); mySQLiteAdapter.insert("apel"); mySQLiteAdapter.insert("Peal"); mySQLiteA
mySQLiteAdapter.insert()代码>填充数据库记录的方法,如下所示:
mySQLiteAdapter.insert("1");
mySQLiteAdapter.insert("apel");
mySQLiteAdapter.insert("Peal");
mySQLiteAdapter.insert("the competitor of samsung");
mySQLiteAdapter.insert("0");
mySQLiteAdapter.insert("1");
如何检查是否插入了值?首先,请使您的id唯一,并使用类似的方法:
String sql = "SELECT 1 FROM artist WHERE id=?";
Cursor cursor = mDbHelper.executeSQLQuery(sql, new String[] { Integer.toString(id) });
if (cursor != null) {
ContentValues artists = new ContentValues();
if (cursor.getCount() == 0) {
artists.put("id", id);
artists.put("artist_name", artist_name);
mDbHelper.insert("artist", null, artists);
artists.clear();
}
cursor.close();
}
当然,根据数据库帮助器类中的函数以及您使用它的方式,它会有所不同。整个想法就是检查是否有一个id为的记录,如果游标计数返回0,则表示没有id为的记录
第二种方法是使用REPLACE
语句:mDbHElper.REPLACE(“艺术家”,null,艺术家)代码>。如果没有具有给定主键的记录,它将插入该记录。如果已经有记录,它将更新它
希望这个答案能告诉您如何实现这一点以及您可以使用的东西。使您的列唯一,如果您尝试添加相同的值,您的数据库将抛出异常。