2014-05-13 3 views
-3

내 데이터베이스에는 질문이 포함되어 있으며 각 질문에는 세 가지 옵션이 있습니다.데이터베이스에서 무작위로 데이터를 가져 오는 안드로이드 sqlite

: 여기

내 코드입니다, 나는 내 문제와 유사한 문제를 발견

하지만 그것도 작동하지 않았다 : 모든 것이 잘 작동하지만 난 질문 및 옵션을 얻을 때 무작위로는 나에게 오류를 제공 IT

public List<Test> getTest() { 
List<Test> MyList = new ArrayList<Test>(); 

myDB=this.getReadableDatabase(); 
Cursor cursor = myDB.rawQuery("SELECT * FROM " + My_Table + "ORDER BY RANDOM() LIMIT 1", null); 

if (cursor.moveToFirst()) { 
do { 
Test newQ = new Test(); 
newQ .setId(cursor.getInt(0)); 
newQ .setTest(cursor.getString(1)); 
newQ .setAns(cursor.getString(2)); 
newQ .setO1(cursor.getString(3)); 
newQ .setO2(cursor.getString(4)); 
newQ .setO3(cursor.getString(5)); 
MyList .add(newQ); 
} while (cursor.moveToNext()); 
} 
return MyList ;} 

내 코드이 줄을 추가 할 때 : RANDOM에 의해

ORDER를() LIMIT 1

활동이 작동하지 않습니다.

답변

4

당신은 문자뿐만 아니라 자바 문자열로 SQL의 ORDER BY 부분을 인용합니다 :

"SELECT * FROM " + My_Table + " ORDER BY RANDOM() LIMIT 1" 
+0

나는 그것을 시도하지만 내가 오류를 얻을 일식이 오류를 얻을하지 않습니다 작동하지 않았다 에뮬레이터에서 응용 프로그램을 실행하려고하면 – user2521365

+0

질문을 편집하여 "작동하지 않음"이 무엇을 의미하는지 자유롭게 설명하십시오. – laalto

+2

편집 된 질문에서 테이블 이름과 'ORDER'사이의 공백을 잊었습니다 – laalto

관련 문제