2013-10-25 5 views
0

에서 업데이트 데이터베이스에 데이터를 삽입하고 그/그녀가 클릭 할 때 SQLite는 데이터베이스에 저장 될 데이터를 삽입 버튼을 절약 할 수 있습니다. 자산 폴더 (.db 파일)에 미리 정의 된 데이터베이스가 있습니다. 이제 데이터를 저장할 수 있고 sqlite 플러그인을 사용하여 이클립스에 삽입 된 데이터를 볼 수있다. 그러나 문제는 assets 폴더의 데이터베이스를 업데이트 할 수 없다는 것입니다. 이 문제를 어떻게 해결할 수 있습니까? 누구든지 그렇게 친절하게 내가 무엇을해야하는지 설명해 주실 수 있습니까? 사전안드로이드 : 내 안드로이드 응용 프로그램 사용자에 자산 폴더

답변

3

에서

고맙습니다

안부 내가 알고 싶은 것은 내가 데이터를 삽입 한 후 자산 폴더에있는 데이터베이스를 업데이트 할 수있는 방법입니다. 런타임에서 자산 폴더를 편집

수 없습니다. source.

이 자산 폴더에서 데이터베이스를로드 :

// Copies DB from assests 
private void copyDataBase() throws IOException { 
    InputStream mInput = mContext.getAssets().open(DB_NAME); 
    String outFileName = DB_PATH + DB_NAME; 
    OutputStream mOutput = new FileOutputStream(outFileName); 
    byte[] mBuffer = new byte[1024]; 
    int mLength; 
    while ((mLength = mInput.read(mBuffer)) > 0) { 
     mOutput.write(mBuffer, 0, mLength); 
    } 
    mOutput.flush(); 
    mOutput.close(); 
    mInput.close(); 
} 

자산에서 DB를 업데이트하기 위해이 answer를 참조하십시오.

+0

이미 내 DatabaseHelper 클래스에서이 메소드를 가지고 내가, 내가 알고 싶은 것은 내가 데이터를 삽입 한 후 자산 폴더에있는 데이터베이스를 업데이트 할 수있는 방법입니다. 삽입 된 데이터를 안드로이드 시스템 폴더에서 볼 수 있습니다 (questoid sqlite manager 플러그인 사용). 사실, 내 안드로이드 애플 리케이션 사용자는 데이터베이스에 작성해야합니다. – Rose18

2

런타임시 스키마가 data/data/pkg_name/database/myDb.db의 복사본을 가져오고 변경 사항이 여기에 반영되지 않기 때문에 자산에서 보관 한 데이터베이스에 대해 작업을 수행 할 수 없습니다 자산.

관련 문제