0
我試圖讓這個的Android SQLite的內部連接
我有2個表 - 表字(ID,姓名,翻譯)和WordSynonym表(synonym_id1,synonym_id2)。
我的所有單詞都會進入第一個表格,當我需要時,我通過第二個表格創建單詞之間的連接。
現在我需要使方法通過特定的id來獲取所有的同義詞。
爲此,我嘗試了這一點。
@Override
public ArrayList<Word> getAllSynonymsByWord(int id) {
ArrayList<Word> synonyms = new ArrayList<>();
Cursor c = database.rawQuery("select id, word, translation from " + WordsTable.TABLE_NAME + " inner join " + WordSynonymTable.TABLE_NAME + " on " + WordSynonymTable.COLUMN_WORD_ID + " = " + id, null);
c.moveToFirst();
while (!c.isAfterLast()) {
Word s = new Word();
s.setId(c.getInt(0));
s.setName(c.getString(1));
s.setTranslation(c.getString(2));
synonyms.add(s);
c.moveToNext();
}
c.close();
return synonyms;
}
參數ID是我想使用ID = 2和id = 3返回詞語例如 我所需要的單詞(圖中ID = 1) 的ID,但這不能正常工作。
我應該改變什麼? 如果您需要代碼註釋的另一部分,我會添加。
Okaay,但我在哪裏使用參數ID從方法,我想W2和詞應該是相同的。 –
我已經改變了最後一部分 - WHERE words.id = id(id - 參數),它的工作原理,謝謝 –