0

我正在开发一个 android 应用程序,其中我有一个本地数据库。我希望如果用户已经输入了一个药物名称说 a。然后我再次去编辑文本并输入一个。它不应该添加到本地数据库中,怎么做这

我试图按照这个链接

如果不存在则插入?

谁能指导我

谢谢图沙尔

4

2 回答 2

1

试试这种方式......它可以帮助你。

String sql = "select * from "
                + TABLE_NAME + " WHERE placeId = '" + placeId + "'"; 
        Cursor cursorinfo = null; 
        try {
            database = databaseHelper.getReadableDatabase();
            cursorinfo = database.rawQuery(sql, null);
        } catch (Exception ex) {
            ex.printStackTrace();
        }

if (cursorinfo.moveToFirst()) {
            try {
                ///Already Exist data..
            } finally {
                database.close();
                cursorinfo.close();
            }

        } else {
            database = databaseHelper.getWritableDatabase();
            try {
                database.insert(TABLE_NAME, "", values);
            } finally {
                database.close();
                cursorinfo.close();
            }
        }

谢谢..

于 2012-07-03T11:02:38.523 回答
1

您只需要检查您Record是否已经在表中,并且您已经遵循正确的答案,我不知道您为什么不能这样做,这就是您所要做的。

Cursor cursor = database.query(tableName, null, "mediName="+editTextValue, null, null, null, null); 
boolean exists = (cursor.getCount() > 0); 
cursor.close(); 

if(!exists)
{
    database.insert(DATABASE_TABLE, null, updateValues); 
}
else
{
    // Record Already there.
}
于 2012-07-03T11:21:35.767 回答