Android 按降序从数据库获取高分时出错

Android 按降序从数据库获取高分时出错,android,database,sqlite,Android,Database,Sqlite,我已经在Android上开发了一个基于测验的应用程序。现在,当我试图按降序排列高分时,问题就出现了。我收到错误无效限制条款:score DESC。我已经在这里发布了我的数据库类和我试图从中获得高分的类。请帮我解决这个错误 DBAdapter.java public long addscore(String name, int score) { ContentValues values = new ContentValues(); values.put(KEY_name, nam

我已经在Android上开发了一个基于测验的应用程序。现在,当我试图按降序排列高分时,问题就出现了。我收到错误
无效限制条款:score DESC
。我已经在这里发布了我的数据库类和我试图从中获得高分的类。请帮我解决这个错误

DBAdapter.java

public long addscore(String name, int score)
{

    ContentValues values = new ContentValues();
    values.put(KEY_name, name); 
    values.put(KEY_score, score);

    return db.insert(DATABASE_TABLE1, null, values);
}
public Cursor getScore() throws SQLException 
{

    String order = KEY_score + " DESC ";
    /*return db.query(DATABASE_TABLE1, new String[] {KEY_scoreid, KEY_name,
            KEY_score}, null, null, null, null, order);*/
    Cursor mCursor = db.query(true, DATABASE_TABLE1, new String[] {
            KEY_scoreid, KEY_name,KEY_score },null, null,null,null, null,order);
    if (mCursor != null) 
    {
        mCursor.moveToFirst();
    }
    return mCursor;
}
Highscore.java

    try
    {
        db1=new DBAdapter(this);
        db1.open();
        c=db1.getScore();

        n1=c.getString(1);
        s1=c.getInt(2);
        n2=c.getString(1);
        s2=c.getInt(2);
        n3=c.getString(1);
        s3=c.getInt(2);
        n4=c.getString(1);
        s4=c.getInt(2);
        n5=c.getString(1);
        s5=c.getInt(2);

        name1.setText(n1);
        score1.setText(Integer.toString(s1));
        name2.setText(n2);
        score2.setText(Integer.toString(s2));
        name3.setText(n3);
        score3.setText(Integer.toString(s3));
        name4.setText(n4);
        score4.setText(Integer.toString(s4));
        name5.setText(n5);
        score5.setText(Integer.toString(s5));

    }
    catch(Exception ex)
    {
        Toast.makeText(getBaseContext(), ex.getMessage(), Toast.LENGTH_SHORT).show();
    }
我需要你们的帮助,伙计们,请帮帮我


提前感谢。

查询应该是这样的

Cursor mCursor = db.query(true, DATABASE_TABLE1, new String[] {
            KEY_scoreid, KEY_name,KEY_score },null, null,null,null,KEY_score + " DESC",null);
尝试如下:

Cursor mCursor =db.query(DATABASE_TABLE1, new String[] {KEY_scoreid,KEY_name,KEY_score}, null, null, null, null, KEY_score + " DESC");
public class Contacts
{
    private int Id;
    private String NAME;
    public int getId()
    {
        return Id;
    }
    public void setId(int id)
    {
        this.Id = id;
    }
    public String getNAME()
    {
        return NAME;
    }
    public void setNAME(String name)
    {
        NAME = name;
    }
     public Contacts(int id, String name)
    {
        super();
        this.Id = id;
        NAME = name;
    }
}
编辑:

您的
联系人
如下所示:

Cursor mCursor =db.query(DATABASE_TABLE1, new String[] {KEY_scoreid,KEY_name,KEY_score}, null, null, null, null, KEY_score + " DESC");
public class Contacts
{
    private int Id;
    private String NAME;
    public int getId()
    {
        return Id;
    }
    public void setId(int id)
    {
        this.Id = id;
    }
    public String getNAME()
    {
        return NAME;
    }
    public void setNAME(String name)
    {
        NAME = name;
    }
     public Contacts(int id, String name)
    {
        super();
        this.Id = id;
        NAME = name;
    }
}

你犯了什么错误?请发布您的日志。错误的参数。。。检查文档并告诉我们查询中的第9个参数是什么method@Selvin请告诉我在哪里?在哪里什么?检查文件?在internet@GrIsHu我得到了这个异常
无效限制条款:score DESC
获取错误
没有这样的列:scoreDESC:,编译时:按scoreDESC从分数顺序中选择不同的scoreid、名称、分数
嘿,请检查
highscore.java
类。我是否正确地传递了参数?获取错误
没有这样的列:scoreid:,编译时:选择不同的scoreid、name、score from scores ORDER BY score DESC
表中是否有名为
scoreid
的字段?签出。请显示您的创建表查询。
private static final String DATABASE_CREATE1=“创建表分数(scoreid整数主键自动递增,“+”名称文本“+”分数数字“+”;”我认为从分数表中获取数据时有一些错误。