2012-10-11 98 views
3

我正在制作应用程序以查找印度的车牌号码。 我的数据库包含两个列“代码”和“城市”代码包含数据,如MH1,MH2等 和城市包含像浦那,孟买的数据。用于从列中查找特定数据的sqlite搜索查询?

应用程序包含一个edittext框和listview。

列表视图由来自像GJ3拉杰果德,GJ10贾姆讷格尔等

如果我的EditText框写GJ整个GJ的唯一数据必须在列表视图apperaed数据库全部数据。

+2

使用文本观察员的EditText和文本更改时,然后执行您的查询在数据库和查询使用“喜欢”煽动的“=” –

+0

谢谢,但我没有得到你的答案,你能写一个查询吗? –

+0

[看到这个tuts](http://samir-mangroliya.blogspot.in/2012/05/android-sectioned-listview-with-search_6865.html) –

回答

2

下面是该查询: SELECT * FROM table_name WHERE code LIKE '%GJ%' LIMIT 0,30

+0

谢谢......但我的专栏包含AN,美联社, MH,GJ,PB和所有状态的wt我必须写? –

2

试试这个:

Cursor c = mDb.rawQuery(
      "select * from table_name where column_name = ?", 
      new String[] { "search" }); 

编辑:

按照给定的上述链接教程,并将以下方法添加到TestAdapter

public Cursor get_tag_Data() 
{ 
    try 
    { 
     String sql ="select * from table_name where column_name = ?", new String[] { edittext.getText().toString().trim()}"; 

     Cursor mCur = mDb.rawQuery(sql, null); 
     if (mCur!=null) 
     { 
      mCur.moveToNext(); 
     } 
     return mCur; 
    } 
    catch (SQLException mSQLException) 
    { 
     Log.e(TAG, "getTestData >>"+ mSQLException.toString()); 
     throw mSQLException; 
    } 
} 

,并从你的类一样调用这个方法:

TestAdapter mDbHelper = new TestAdapter(urContext);   
mDbHelper.createDatabase();  
mDbHelper.open(); 

Cursor testdata = mDbHelper.get_tag_Data(); 

mDbHelper.close(); 

编辑:

声明如下方法到您的数据库类,

public List<String> getQuestions(String difficulty) { 

    public static List<String> question_Set; 
    question_Set = new ArrayList<String>(); 


    Cursor c = mDb.rawQuery(
      "select * from table_name where column_name = ?", new String[] { difficulty }); 

    while (c.moveToNext()) { 

     question_Set.add(c.getString(1).trim()); 


    } 

    return question_Set; 
} 

现在打电话一样

DB.getQuestions(edittext.getText().toString().trim()); // DB is your database class name 
+0

我想你想按照edittext值搜索column.if是然后把你的edittext值代替搜索。像''select * from table_name where column_name =?“, new String [] {edittext.getText()。toString()。trim()}' –

+0

仍然我没有得到。如果我用edittext编写AP,然后在列表视图中显示AP的城市和代码列表。 –

+0

你如何访问数据库代码?我不知道。但检查数据库链接http://stackoverflow.com/a/9109728/1263679我认为这对你有所帮助。 –

0

继续前进link

希望它能帮助你。

+0

如果(cursor.moveToFirst()){ \t \t \t \t \t做{ \t \t \t \t \t \t字符串代码= cursor.getString(0); \t \t \t \t \t \t String city = cursor。的getString(1); \t \t \t \t \t \t \t \t \t \t \t \t Log.d( “TESTDATA”,代码+ “” +地点); \t \t \t \t \t \t arrayList.add(code +“\ t”+“:”+“”+ city); \t \t \t \t \t \t //arrayList.add(data); \t \t \t \t \t \t arrayList.addAll(arrayList); \t \t \t \t \t \t adapter.clear(); \t \t \t \t \t \t adapter.notifyDataSetChanged(); \t \t \t \t \t \t \t \t \t \t \t}而(cursor.moveToNext()); –