2011-01-15 2 views
2

주 데이터베이스에서 일부 테이블 만 백업해야합니다. 다른 테이블은 참조이며 정적이므로 백업 할 필요가 없습니다.특정 테이블에 대한 동적 데이터베이스 백업

SDCARD에 새 DB를 만들었습니다. SDCARD에서 직접 DB에 액세스 할 수 있습니까? 아니면 완료된 백업을 복사해야합니까?

실제 질문은 루프의 각 레코드에있는 필드를 반복하여 각 필드마다 수백 줄의 코드가 필요 없다는 것입니다.

VB .NET에서 나는 안드로이드에 어떻게 그렇게 상처 ...

For X = 0 to RS.Fields.Count 
NewRS.Fields(x).value = Rs.Fields(x).value 

등과 같은 일을 할 것인가?

답변

1

이 문제를 처리하기위한 클래스를 작성했습니다.

Cursor c = DbBak.rawQuery(Sql, null); 
      String Cn[] = c.getColumnNames(); 

      if (c != null) { 
       if (c.moveToFirst()) { 
        do { 
         for (x=0; x< c.getColumnCount(); x++) 
         { 
          newRow.put(Cn[x].toString(), c.getString(x)); 
         } 

         Db.insert(TableName, null, newRow); 

        }while (c.moveToNext()); 
: 예 내 DB 여기

코드의 내장입니다 ... 적어도 95 %의 참조입니다
0

참조 테이블이 데이터베이스 크기의 95 %를 차지하지 않는 한, 데이터베이스가 닫혀있는 동안 표준 Java 파일 I/O를 사용하여 데이터베이스 파일을 복사합니다. 이는 셀 단위로 데이터를 분석하는 것보다 훨씬 빠릅니다.

관련 문제