0

実際、私は過去 3、4 週間これに取り組んでいますが、解決できていません。私は自分のアクティビティで日付ピッカー コントロールを使用した Android の Sqlite データベースに取り組んでいます。ユーザーが日付を設定したら、日付を文字列に格納し、それをデータベースに送信します。正常に動作していますが、日付ピッカー コントロールに設定された日付に基づいて日付を取得しようとしましたが、目的の出力が得られず、カタログでデータベースを開いている行のみが表示されます。

データベース クラス

//Table Definition with Columns
private static final String CREATE_MYCOMPANY =
    "create table company " + " (" + "_id" + " integer primary key autoincrement, "
    + "company_date" +" date);";


//Insert Method
public long create(String str) {

    ContentValues args = new ContentValues();
    args.put(KEY_COMPANY_DATE, str);

    return mDb.insert(MYCOMPANY, null,args);
}




//Method For Fetching the row on the basis of Date.//
    public Cursor fetchdate(String datr) throws SQLException, ParseException {

    Cursor mCursor =
        mDb.query(true, MYCOMPANY, new String[] {KEY_COMPANY_ID,
                KEY_COMPANY_DATE}, KEY_COMPANY_DATE /*+" BETWEEN date('2012-6-10') AND date('2012-6-14')"*/ 
                 + " = " + datr, null,
                null, null, null, null);

    if (mCursor != null) {
        mCursor.moveToFirst();
    }


    return mCursor;

}

活動区分コード

//Date picker 
DatePicker  dt = (DatePicker)findViewById(R.id.datePicker1);

//Converting the Date into the string format  
String day = String.valueOf(dt.getYear())+"-" +String.valueOf(dt.getMonth() + 1)
            +"-"+String.valueOf(dt.getDayOfMonth());


//Method for displaying the rows of table on date basis
public void DisplayAllCmpData(){

        employeeTable.open();
        try{
          Cursor c = employeeTable.fetchdate("2012-6-13");
          if (c.moveToFirst())
           {
             do {
              System.out.println("bool2");
                 DisplayCmpTitle(c);
                } while (c.moveToNext());
           }
         }catch(Exception e){
        System.out.println(e);
     Toast.makeText(this,e.toString(),Toast.LENGTH_LONG).show();
           }
         employeeTable.close();
    }

//Function For Displaying the all record.//    
    public void DisplayCmpTitle(Cursor c)
    { 

    System.out.println("bool");
       Toast.makeText(this,
           "ID: " + c.getString(0) + "\n" +
           "DATE: " + c.getString(1)
           , Toast.LENGTH_LONG).show();

    }

事前に助けてくれてありがとう!!!!!

4

1 に答える 1

0
mDb.query(true, MYCOMPANY, new String[] {KEY_COMPANY_ID,
                KEY_COMPANY_DATE}, KEY_COMPANY_DATE /*+" BETWEEN date('2012-6-10') AND date('2012-6-14')"*/ 
                 + " = '" + datr+"'", null,
                null, null, null, null);
于 2012-06-13T07:11:46.127 に答える