Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我的SQL语句不会从带有SQLite的android中的表返回任何数据_Android_Sqlite - Fatal编程技术网

我的SQL语句不会从带有SQLite的android中的表返回任何数据

我的SQL语句不会从带有SQLite的android中的表返回任何数据,android,sqlite,Android,Sqlite,我有一个onClick按钮,当用户单击该按钮时,它将从database helper类调用一个方法来执行搜索。但由于某些原因,它似乎不起作用,请帮帮我下面是我为具有按钮的类编写的代码: public class LessonAlphabets extends Activity implements View.OnClickListener { Button btn; protected void onCreate(Bundle savedInstanceState) {

我有一个onClick按钮,当用户单击该按钮时,它将从database helper类调用一个方法来执行搜索。但由于某些原因,它似乎不起作用,请帮帮我下面是我为具有按钮的类编写的代码:

 public class LessonAlphabets extends Activity implements View.OnClickListener {

    Button btn;

    protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      DatabaseHelper db = new DatabaseHelper(this);
      //some other unrelated code
    }

    public void onClick(View view) {
      btn = (Button) view;
      if(alphabetName.equals(alphabetHolder)){
          DatabaseHelper dbHelper = new DatabaseHelper(this);

          String text= dbHelper.getDescription(alphabetHolder);//this is the method to query
          dbHelper.close();
          textAlpha.setText(alphabetHolder + text);
    }
下面是数据库帮助器类:

  public class DatabaseHelper extends SQLiteOpenHelper {
   //declarations and other methods
   //....
   //....

     public String getDescription(String s_name) {

       String data = "";

       String selectQuery = "SELECT " + KEY_DESC + " FROM " + TABLE_SIGN + " WHERE signName = '" + s_name + "'";

        SQLiteDatabase db = this.getReadableDatabase();
        Cursor cursor = db.rawQuery(selectQuery, null);

        if (cursor.moveToFirst()) {
            do {
                // get  the  data into array,or class variable
                data = cursor.getString(cursor.getColumnIndex(KEY_DESC));
            } while (cursor.moveToNext());

        }
        db.close();
        return data;
     }
   }
最后是数据库表的类,我不知道它对这个问题是否重要:

 public class Table_Sign {

        private int id;
        private String signName;
        private String signNameBM;
         private String desc;
         private String descBM;
         private int category;


public Table_Sign(){}

public Table_Sign(String signName, String signNameBM, String desc, String descBM, int category) {
    super();
    this.signName = signName;
    this.signNameBM = signNameBM;
    this.desc = desc;
    this.descBM = descBM;
    this.category = category;
}

//------- getters & setters

// getting ID
public int getId(){
    return this.id;
}
// setting id
public void setId(int id){
    this.id = id;
}

// getting signName
public String getSignName(){
    return this.signName;
}
// setting signName
public void setSignName(String signName){
    this.signName = signName;
}

// getting signNameBM
public String getSignNameBM(){
    return this.signNameBM;
}
// setting signNameBM
public void setSignNameBM(String signNameBM){
    this.signNameBM = signNameBM;
}

// getting desc
public String getDesc(){
    return this.desc;
}
// setting desc
public void setDesc(String desc){
    this.desc = desc;
}

// getting descBM
public String getDescBM(){
    return this.descBM;
}
// setting descBM
public void setDescBM(String descBM){
    this.descBM = descBM;
}

// getting category
public int getCategory(){
    return this.category;
}
// setting category
public void setCategory(int category){
    this.category = category;
}

//------- getters & setters

@Override
public String toString() {
    return "Table_Sign [id=" + id + ", signName=" + signName + ", signNameBM=" + signNameBM + ", desc=" + desc + ", descBM=" + descBM
            + ", category=" + category + "]";
}

}

与我共事过的那些人相比,你的助手类似乎很差劲。据我所见,它通常由构造函数和重写的onCreate和onUpgrade方法组成。还有另一个类,通常称为源类,它可以与Helper类协同工作,帮助您完成所需的任务。你在哪里打开与可写数据库的连接?@zgc7009我在helper类中有构造函数、onCreate和onUpgrade方法,但我没有把它放在这里,我只是把它放在//声明和其他方法//../../../。。。。在这里的问题中。我还认为我没有做任何事情来打开与db的连接,我该如何打开它?TQ