我创建了一个下拉列表,我想要点击名称的详细信息,该名称应该从database.i中获取。想在sqllite.it中写为查询。不应该是原始查询。
下面是我的代码:
Cursor cursor = db.query("contacts", requiredColumn,"name='+idea'", null, null, null, null);
变量idea是我从下拉列表中选择的名称。
任何人请帮帮我
答案 0 :(得分:0)
要获取点击名称的详细信息,请使用此查询
Cursor cursor = db.query("contacts", requiredColumn, "name='" + idea + "'", null, null, null, null);
而不是
Cursor cursor = db.query("contacts", requiredColumn,"name='+idea'", null, null, null, null);
答案 1 :(得分:0)
Cursor cursor = db.query(
"contacts",
requiredColumn, // array of column names
name + " = ?",
new String[] { idea },
null, // groupBy
null, // having
null // orderBy
);
答案 2 :(得分:0)
Cursor c = db.rawQuery("SELECT * FROM contacts WHERE name= '" + idea +"'",
null);
<强>更新强>
因此query
的正确语法是
public Cursor query (String table, String[] columns, String selection, String[] selectionArgs, String groupBy, String having, String orderBy, String limit)
所以你的代码应该是
db.query(
"contacts",
requiredColumn, // A list of which columns to return.
"name = ? ", //A filter declaring which rows to return.
new String[] { idea },
null,
null,
null,
null
);
在android中引用query 。
尝试使用此代码,我希望这会对您有所帮助。
答案 3 :(得分:0)
使用此功能。
Cursor cursor = db.query("contacts", new String[] {KEY_NAME}, KEY_NAME+ "=?",
new String[] {"idea"}, null, null, null, null);
答案 4 :(得分:0)
您必须使用
打开sqlite数据库private SQLiteDatabase database;
private MyDBHelper dbHelper;
public void open()
{
database = dbHelper.getWritableDatabase();
}
然后输入您的查询:
public Cursor getData(String idea)
{
Cursor cursor ;
cursor = database.query("contacts", null,
"name='" + idea + "'", null , null , null , null);
if(cursor == null)
return null ;
cursor.moveToFirst();
return cursor ;
}
从您的Activity类中的光标获取数据:
Cursor cursor = getData("Your_String");
String Name = cursor.getString(cursor.getColumnIndex("name"));
希望这对你有用。