我真的不知道为什么我的查询给出错误,每件事看起来都不错但是logcat显示msg语法错误。请查看我们查询中的人员。
public class ContactDatabase extends SQLiteOpenHelper {
SQLiteDatabase db;
public static final String DATABASE_NAME="totalContact1.db";
public static final String TABLE_NAME="mecontact1";
public static final String NAME="name";
public static final String PHONE="phone";
public static final String UID="_id";
public ContactDatabase(Context context) {
super(context, DATABASE_NAME, null, 1);
}
@Override
public void onCreate(SQLiteDatabase db) {
try {
db.execSQL("create table mecontact1" +
"(_id integer primary key , name text, phone text)");
}catch(android.database.SQLException e){
System.out.println("table create nhi ho rha");
}
}
public Cursor forEditPurpose(int pos){
db=this.getReadableDatabase();
Cursor res = db.rawQuery("SELECT, " + UID + ", name, phone FROM mecontact1 where " + UID + " = " + pos + "", null);
return res;
}
}
logcat状态是:
Caused by: android.database.sqlite.SQLiteException: near ",": syntax error (code 1): , while compiling: SELECT, _id, name, phone FROM mecontact1 where _id = 1
答案 0 :(得分:1)
更改以下内容:
Cursor res = db.rawQuery("SELECT, "
+ UID + ", name, phone FROM mecontact1 where "
+ UID + " = " + pos + "", null);
要:
Cursor res = db.rawQuery("SELECT "
+ UID + ", name, phone FROM mecontact1 where "
+ UID + " = " + pos + "", null);
答案 1 :(得分:1)
从此行删除SELECT
后的第一个“,”Cursor res = db.rawQuery("SELECT, " + UID + ", name, phone FROM mecontact1 where " + UID + " = " + pos + "", null);
这将是
Cursor res = db.rawQuery("SELECT " + UID + ", name, phone FROM mecontact1 where " + UID + " = " + pos + "", null);