2015-03-07 3 views
-2

При использовании select * из имени таблицы он отображает все столбцы в таблице sqlite. В случае * (Astriek) я заменяю некоторые имена столбцов, я не могу получить данные. Он работает на sqlite, но не работает в кодировке android. Пожалуйста, исправьте эти вещи. Если вы используете Select * из имени таблицы, он работает, вместо этого, если мы укажем какое-то имя столбца, оно не будет отображаться.Как отобразить конкретную колонтитулу sqlite в андроидной активности?

 protected void adddata1() { 
        // TODO Auto-generated method stub 
        //tr1.removeAllViewsInLayout(); 


        Database db=new Database(Boreport.this); 
        SQLiteDatabase sb=db.getReadableDatabase(); 

    Cursor cus=sb.rawQuery("select boatname,amount from Auction",null);// The problem Line 

         cus.moveToFirst(); 

         for(int i=0;i<cus.getCount();i++) 
          { 

          if(cus.getString(0).toString().equalsIgnoreCase(boatno.getText().toString())) 
          { 

        bn.setText(cus.getString(1)); 

        amount.setText(cus.getString(2)); 

          } 
cus.moveToNext(); 
} 
+0

Если вы выбрали только ** 1 ** столбец (boatname), а затем попытаться получить ** 3 ** столбцы (getString (0), getString (1) и getString (2)) ... Как это ожидается? –

+0

ya right..but как я могу проверить условие if, если это * только я должен проверить. В противном случае я не могу. – Hello

+0

** 1 ** Никто не может предсказать ** порядок **, в котором столбцы возвращаются при запросе '*'. Поэтому обращение к ним ** по индексу ** является потенциально катастрофическим. ** 2 ** Вы ** должны ** включить в свой запрос ** все ** поля, которые вы хотите вернуть. Включая те, на которых вы выполняете проверки. –

ответ

-1

Вы можете использовать запрос() метод для задачи

Проверьте это:

Cursor cus=sb.query("Auction", new String[] {"boatname","amount"}, null, null, null, null, null, null); 
+0

Кодовые ответы не очень полезны. –

Смежные вопросы