2011-04-10 4 views
0

데이터베이스/테이블을 txt 파일로 내보내는 것에 대해 몇 가지 질문/답변이 나왔습니다. 거의 모든 솔루션은 Java I/O를 사용합니다. 나는 누군가가 네이티브 sqlite 명령으로 어떤 성공을했는지 궁금했다. 다음은 내 코드이며 작동하지 않습니다. 누구나이 아이디어를 얻을만한 아이디어가 있다면 정말 고맙겠습니다.sqlite 결과를 파일로 내보내기

String OutputFile=Environment.getExternalStorageDirectory()+"/"+output + ".txt"; 
databaseHelper.getDatabase().beginTransaction(); 
databaseHelper.getDatabase().execSQL(".mode list"); 
databaseHelper.getDatabase().execSQL(".separator |"); 
databaseHelper.getDatabase().execSQL(".output " + OutputFile); 
databaseHelper.getDatabase().execSQL("select * from "+ TABLE_NAME); 
databaseHelper.getDatabase().execSQL(".exit"); 
databaseHelper.getDatabase().endTransaction(); 

답변

1

접두어가 붙은 명령. SQL이 아니다. 그들은 sqlite3 쉘에 의해 구현됩니다. 그러나이 방법을 실제로 사용하려면 Android 앱에서 sqlite3 바이너리를 호출 할 수 있습니다. 영감을 얻으려면 example of how to do this in regular J2SE을 참조하십시오.

호기심에서 벗어나서 왜 텍스트로 내보낼까요? sqlite3 바이너리는 많은 플랫폼에서 사용할 수 있습니다. 데스크톱 도구를 사용하여 데이터베이스를 내보내는 것이 더 합리적 일 수 있습니다. 이 도움이

희망, 답장을 보내

+0

답장을 보내 주셔서 감사합니다. 내 안드로이드 앱에서 테이블 내용을 이메일로 보내는 기능을 제공하고 싶습니다. 그것이 테이블을 txt 파일로 내보내려는 이유입니다. – Indrajeet

2

SQL 문이 아닌 명령 줄 셸 명령이 아닌가요? 쉘 (adb/sqlite3과 같은)에서 수행 할 수있는 작업과 애플리케이션의 데이터베이스 클라이언트 프레임 워크에서 사용하는 SQL 문을 혼동하지 마십시오.

짧은 대답, 당신은 자바 파일을 sqlite 데이터베이스에서 텍스트 파일로 내보내려는 경우 Java I/O를 사용해야한다고 생각합니다.

+0

감사

필 Lello. 이제 쉘 명령이 SQL 세션에서 해석되지 않는다는 것을 이해합니다. – Indrajeet

관련 문제