2012-10-16 2 views
0

내 응용 프로그램에서 SQLite 데이터베이스를 사용하고 있습니다. 데이터베이스를 삭제/삭제하려고하지만 할 수 없습니다. 데이터베이스의 위치를 ​​확인했으며/data/data에 있습니다. /org.secure.sms/databases하지만 삭제하려고 할 때 성공하지 못했습니다. 제발 도와주세요. 이 코드입니다 :SQLite에서 데이터베이스를 제거하는 데 어려움을 겪고

public static void DeleteDatabase(Context context) 
{ 
    try 
    { 

    String filePath = context.getFilesDir()+ File.separator + "contactsManager"; 
    String filePath1 = context.getFilesDir()+ File.separator + "database"; 
    String filePath2 = context.getFilesDir()+ File.separator + "databases"; 

    context.deleteDatabase(filePath); 
    context.deleteDatabase(filePath1); 
    context.deleteDatabase(filePath2); 

    File file = new File(filePath); 
    File file1 = new File(filePath1); 

context.deleteFile(file.getName()); 
context.deleteFile(file1.getName()); 
    } 
    catch(Exception e) 
    { 
     Toast.makeText(context,"Exception in DeleteDatabase",Toast.LENGTH_SHORT).show(); 
    } 

} 

사전에 찾아 와요 고마워요 도와주세요. 코드에서

context.deleteDatabase(DATABASE_NAME); 

당신이 전체 경로를 제공하고 있습니다 :

+0

오류 스택을 제공해주십시오. –

답변

2

SQLiteOpenHelper를 확장 한 사용자 정의 클래스의 데이터베이스를 삭제할 때이 방법을 사용합니다.

private final static String DATABASE_NAME = "pain.db"; 

private static final String DB_PATH = "/data/data/YOUR.PACKAGE.NAME/databases/" + DATABASE_NAME; 


@Override 
    public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) { 

     Log.d("DATABASE UPDATED", "DATABASE UPDATED"); 

     try { 
      File file = new File(DB_PATH); 
      file.delete(); 
     } catch (Exception ex) { 
      ex.printStackTrace(); 
     } 
    } 
1

데이터베이스를 삭제하려면,이 코드입니다.

+0

Sir 전체 경로를 제공했지만 logcat에서이 메시지가 나타납니다. – user1726619

+0

10-16 15 : 15 : 44.578 : D/(9319) : /data/data/org.secure.sms/files/contactsManager의 연결을 해제 할 수 없습니다. ': 해당 파일 또는 디렉토리가 없습니다. (errno = 2) 10-16 15 : 15 : 44.607 : D/(9319) :'/data/data/org.secure.sms/files/database '의 링크를 해제 할 수 없습니다. 파일 또는 디렉토리 (errno = 2) – user1726619

+1

@YaqubAhmad : 참고하시기 바랍니다 http://developer.android.com/reference/android/content/ContextWrapper.html#deleteDatabase%28java.lang.String%29 –

0

file Extension !! 아래에서 시도하십시오.

String filePath = context.getFilesDir()+ File.separator + "yourDataBaseName.db"; 
관련 문제