【问题标题】:sqlite search query for finding a particular data from column?用于从列中查找特定数据的 sqlite 搜索查询?
【发布时间】:2012-10-28 19:35:08
【问题描述】:

我正在制作查找印度车牌的应用程序。 我的数据库包含两列“代码”,“城市”代码包含 MH1、MH2 等数据。 和 city 包含像 Pune,Mumbai 这样的数据。

App 包含一个编辑文本框和列表视图。

Listview 包含来自 GJ3 Rajkot、GJ10 Jamnagar 等数据库的全部数据。

如果我在编辑文本框中写 GJ 整个只有 GJ 的数据必须出现在列表视图中。

【问题讨论】:

  • 对 EditText 使用文本观察器,当文本更改时,然后在数据库中执行您的查询,并在查询中使用“喜欢”引发的“=”
  • 谢谢,但我没有得到你的答案,你能写一个查询吗?
  • 不工作..因为我已经使用一个游标从数据库中获取数据...并添加到列表视图中..所以我如何使用另一个游标来使用 edittext 搜索数据并显示数据根据在editttext中键入的代码在列表视图中

标签: android


【解决方案1】:

这里是查询: 选择 * 来自table_name 在哪里code喜欢'%GJ%' 限制 0 , 30

【讨论】:

  • 谢谢...但是我的专栏包含 AN、AP、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

【讨论】:

  • 我认为您想根据 edittext 值在列中进行搜索。如果是,则将您的 edittext 值代替搜索。喜欢"select * from table_name where column_name = ?", new String[] { edittext.getText().toString().trim()}
  • 我仍然没有得到。如果我在edittext中编写AP,那么在listview中它必须显示AP的城市和代码列表。
  • 你是如何访问数据库代码的?,我不知道。但是请检查此链接以获取数据库stackoverflow.com/a/9109728/1263679 我认为它对您有所帮助。
  • 不工作..因为我已经使用一个游标从数据库中获取数据...并添加到列表视图中..所以我如何使用另一个游标来使用 edittext 搜索数据并显示数据根据在editttext中键入的代码在列表视图中
  • @PavanAnadkat 请检查我更新的代码并关注stackoverflow.com/a/9109728/1263679
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-07
  • 2021-02-16
  • 2017-11-23
  • 1970-01-01
  • 2013-05-06
  • 1970-01-01
相关资源
最近更新 更多