Android 安卓SQLite查询:";queryNumEntries。。不适用于参数";?

Android 安卓SQLite查询:";queryNumEntries。。不适用于参数";?,android,sqlite,Android,Sqlite,我有一个名为contacts.db的数据库,其中一个表名为table\u NAME,其中一列名为Contactname。我想格式化一个查询,以检查字符串变量名中作为值的联系人名称是否已作为记录保存在表中,如果不是,则我想添加它,或者什么也不做。我写的代码如下: SQLiteDatabase db = events.getReadableDatabase(); int rawNum = DatabaseUtils.queryNumEntries(db, TABLE_NAME,

我有一个名为
contacts.db
的数据库,其中一个表名为
table\u NAME
,其中一列名为
Contactname
。我想格式化一个查询,以检查字符串变量名中作为值的联系人名称是否已作为记录保存在表中,如果不是,则我想添加它,或者什么也不做。我写的代码如下:

SQLiteDatabase db = events.getReadableDatabase();
int rawNum = DatabaseUtils.queryNumEntries(db, TABLE_NAME, 
                        "Contactname=?", new String[] {contactName}); 
    if(rawNum==0){
        addRecord(contactName);
        addedCounter+=1;
    }
    else{
        savedCounter+=1;
    }

但该应用程序被迫关闭。你能看出这个查询有什么问题吗?我要做的是查看是否有行,如果行数为0,则添加联系人。

也许是时候更新您的开发工具包了

代码中使用的带有签名的方法是在API级别11中引入的:

public static long queryNumEntries (SQLiteDatabase db, String table, String selection, String[] selectionArgs)
API级别1只有两个参数的方法:

public static long queryNumEntries (SQLiteDatabase db, String table)

也许是时候更新你的开发工具包了

代码中使用的带有签名的方法是在API级别11中引入的:

public static long queryNumEntries (SQLiteDatabase db, String table, String selection, String[] selectionArgs)
API级别1只有两个参数的方法:

public static long queryNumEntries (SQLiteDatabase db, String table)

表中有哪些字段?请发布logcat错误。这可以使用单个SQL[ite]查询写入:无需检查结果。尝试在SO上搜索“TheIntent”。我在类型DatabaseUtils中得到queryNumEntries(SQLiteDatabase,String)方法。Utils不适用于参数(SQLiteDatabase,String,String[]),这是一个编译时错误,它说:我接受
(SQLiteDatabase,String)
,但我得到了
(SQLiteDatabase,String,String,String[])
。返回API的时间到了。表中有哪些字段?请发布logcat错误。这可以使用单个SQL[ite]查询写入:无需检查结果。尝试在SO上搜索“TheIntent”。我在类型DatabaseUtils中得到queryNumEntries(SQLiteDatabase,String)方法。Utils不适用于参数(SQLiteDatabase,String,String[]),这是一个编译时错误,它说:我接受
(SQLiteDatabase,String)
,但我得到了
(SQLiteDatabase,String,String,String[])
。是时候回到API了。