2012-02-17 13 views
0

SQlite 데이터베이스에서 테이블 값을 가져 오려고하지만 DatabaseFactory.open()에서 URI를 열 수 없습니다. BlackBerry의 SQLite 데이터베이스에서 값을 가져올 수 없습니다.

나는 아래의 코드를 작성 :

URI myURI = null; 
    Cursor cursor = null; 
    try 
    { 
     myURI = URI.create("/SDCard/databases/itemdb.db"); 

     try 
     { 
      if(DatabaseFactory.exists(myURI)) 
      { 
       Database sqliteDb = DatabaseFactory.open(myURI); 
       try 
       { 
        Statement st=sqliteDb.createStatement(query); 
        st.prepare(); 
        Logger.out("Grocery", "it is comin here ---- 12"); 
        cursor = st.getCursor(); 
       } 
      } 
     } 
    } 
+0

응용 프로그램에서 만든 "itemdb.db"데이터베이스는 무엇입니까? 암호화 된 형식으로 데이터베이스를 만들고 있습니까? 가장 importent는이 코드를 실행하기 전에 시뮬레이터로 PC 파일 시스템 Sd 카드를 마운트 했습니까? 위의 것들을 명확하게 알려주십시오. –

+0

예 .. itemdb.db는 내 응용 프로그램에서만 생성됩니다. 그리고 이미 나는 SD 카드를 탑재했다. 그리고 db에 값을 삽입 할 때 제대로 발생합니다. 그 값들을 볼 수 있습니다. 그러나 검색 할 때 문제가 발생합니다 .. –

+0

ok 이것을 참조하시기 바랍니다 http://stackoverflow.com/a/9324410/914111 링크, 혹시 의심의 여지가 여기에 와서 http://chat.stackoverflow.com/rooms/4014/knowledge-sharing-for-blackberry-and-java 내가 당신을 도울 것입니다 –

답변

0

열기() 호출이 실패 할 때 당신이 얻을 오류 메시지가 포함 된 경우가 더 좋을 것이다. 이 댓글을 바탕으로

은 :

yes..That의 itemdb.db은 내 응용 프로그램에 의해 생성된다. 그리고 이미 나는 SD 카드를 탑재했다. 그리고 db에 값을 삽입 할 때 제대로 발생합니다. 그 값들을 볼 수 있습니다. 그러나 검색시에만 문제가 발생합니다.

나는 데이터베이스가 이미 삽입되어있는 것으로 추측하고 있습니다. 삽입 코드가 데이터베이스를 제대로 닫고 있는지, 그리고 삽입 코드와 동시에 읽기가 실행되지 않도록 동기화되어 있는지 확인하십시오.

관련 문제