对数据库中的元素进行排序

Nid*_*oms 2 database sqlite android

我已经在android(SQLite)中成功创建了一个数据库表.我试图根据名字或名字(升序/降序)对数据库中的元素进行排序.(为此目的,我在上下文菜单中有按钮).我在编写SQL语句时遇到问题.任何的想法?

public void onCreate(Bundle savedInstanceState) 
    {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.database);

        ListView lv=(ListView)findViewById(R.id.mylist);


         dbh = new DatabaseHelper(this);
         c = dbh.getReadableDatabase().rawQuery("SELECT _id, " + 
             DatabaseHelper.NAME + 
  ", " + DatabaseHelper.LASTNAME + 
      ", " + DatabaseHelper.ans2 + 
                        " FROM " +
                DatabaseHelper.TABLE_NAME, null); // initializing 


            String[] dataFrom ={DatabaseHelper.NAME, DatabaseHelper.LASTNAME, DatabaseHelper.ans2};
            int[] dataTo = {R.id.name, R.id.value1, R.id.value2};               
            SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, 
                    R.layout.row, c, dataFrom, dataTo);

           lv.setAdapter(adapter);

           registerForContextMenu(lv);


    }
Run Code Online (Sandbox Code Playgroud)

DGo*_*mez 5

您可以执行以下操作,请查看此URL http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html

dbh.getReadableDatabase().query(DatabaseHelper.TABLE_NAME,
                                    new String[]{DatabaseHelper.NAME,
                                                DatabaseHelper.LASTNAME, 
                                              ,DatabaseHelper.ans2},null,null,null,
                                             DatabaseHelper.NAME,null);
Run Code Online (Sandbox Code Playgroud)

在倒数第二个参数中,您设置要依赖的行,您可以添加字符串ASC或DESC作为示例

DatabaseHelper.NAME + " ASC"
Run Code Online (Sandbox Code Playgroud)