내 안드로이드 응용 프로그램은 SQLITE를 사용합니다. 특정 테이블에서 데이터를 검색하려고하면 모든 것이 올바르게 작동합니다. 특히 varchar 유형이고 거대한 텍스트 (파일에 덮어 쓸 base64 문자열)를 보유하고 있습니다.오류 데이터 검색 SQLITE
내가이 테이블의 다른 열을 검색하려고하면 검색이 성공적이지만,이 칼럼에서 나는 오류 얻을 :
String Filequery= "Select FileName from Hyperlinks_GVT where Taskcode='"+currentTaskCode+"'
and Name='"+tempItem.getText()+"'";
Log.d(TAG,"Query is: "+Filequery);
try {
cursor3 = MainActivity.myDataBase.rawQuery(Filequery, null);
String Data="";
byte[] btData;
if (cursor3 != null && cursor3.moveToFirst()){
do {
Data=cursor3.getString(cursor3.getColumnIndex("FileName"));
} while (cursor3.moveToNext());
}
cursor3.close();
: 여기
java.lang.IllegalStateException: Couldn't read row 0, col 0 from CursorWindow. Make sure the
Cursor is initialized correctly before accessing data from it.
내 코드입니다 표 :
CREATE TABLE [Hyperlinks_GVT](
[ID] integer PRIMARY KEY AUTOINCREMENT NOT NULL,
[Taskcode] [int] NOT NULL,
[TaskYear] [int] NOT NULL,
[Name] [varchar](100) NOT NULL,
[FileName] [varchar] NOT NULL,
[Notes] [varchar](200) NOT NULL,
[UserID] [nvarchar](50) NOT NULL,
[CreationDT] [varchar](100) NOT NULL)
FILEName은 큰 데이터가있는 열 참고 : SQLite Manager를 사용하여 Firefox에서 쿼리를 실행하면 쿼리가 결과를 검색하므로 쿼리가 정상적으로 작동하고 오류가 발생하지 않습니다. 도움을 주시면 감사하겠습니다.
FileNamem에서 하드 코드 된 작은 텍스트로 시도하고 작동하는지 확인하십시오. – andrewww
그래야 –
작은 텍스트로 잘 작동합니다. –