Как выполнить этот запрос SQLite на Android: выберите X из таблицы, где X = что-то И Y = что-то - PullRequest
1 голос
/ 13 мая 2011

Это моя таблица apTable:

db.execSQL("CREATE TABLE "+apTable+"
 ("
+idAP+" TEXT PRIMARY KEY , "
+ssID+" TEXT, " 
+testAPid+" INTEGER NOT NULL ,FOREIGN KEY ("+testAPid+") REFERENCES "+testsTable+" ("+colTestID+") ON DELETE CASCADE);");

Я хочу сделать запрос, который даст мне строки idAP, где idAP равно заданному значению, а внешний ключ равен другому заданному значению.

Я делаю это так, но это не работает:

 public String CheckAP(String BSSID, String Teste)
 {
     SQLiteDatabase db=this.getReadableDatabase();
     String[] params=new String[]{BSSID, Teste};
     Cursor c=db.rawQuery("SELECT "+idAP+" FROM "+apTable+" WHERE "+idAP+"="+BSSID+" AND "+testAPid+"="+Teste, null);           
     c.moveToFirst();
     int index= c.getColumnIndex(idAP);
    return c.getString(index);    
}

В чем здесь проблема?

Ответы [ 2 ]

1 голос
/ 13 мая 2011

См. Это.

Использовать базу данных openhelper.

http://www.screaming -penguin.com / узел / 7742

И используйте это, чтобы проверить, создали ли вы свою базу данных.

http://androidblogger.blogspot.com/2009/06/tutorial-how-to-access-android-database.html

0 голосов
/ 13 мая 2011

попробуйте это?думаю, что встроенный запрос работает просто без необходимости вставлять фразу where

Cursor c=db.query(apTable, idAP, idAP+"="+BSSID+" AND "+testAPid+"="+Teste, null, null, null, null);

, но зачем вам выбирать idAP, если вы уже знаете, что выбираете конкретный idAP?разве вы не должны делать что-то подобное?

Cursor c=db.query(apTable, idAP, testAPid+"="+Teste, null, null, null, null);

: S

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...