2012-02-19 7 views
1

SQLiteデータベースとアプリケーションをリンクできませんでした。 データベースのサイズは約4-5Mbです。 データベースとQUERYをデータベースにリンクして取得する方法をリンクするのに役立つ回答をください。 ありがとうございましたSQLiteデータベースをAndroidアプリケーションにリンクするにはどうすればよいですか?およびViaアプリケーションを使用してデータベースレコードを取得しますか?

答えて

0

あなたの既存のデータベースは、あなたの資産フォルダに配置する必要があります。 「data/data/<package_name>/databases」の場所に

InputStream copy = context.getAssets().open(LOCAL_DB_NAME); 

コピーデータベース:データベースを開きます。その後

//where DB_PATH is the above.... 
String path_DB = DB_PATH + DB_NAME; 
OutputStream dbOut = new FileOutputStream(path_DB); 

byte[] buffer = new byte[1024]; 
int length; 
while ((length = copy.read(buffer)) > 0) { 
    dbOut.write(buffer, 0, length); 
} 

// Close the streams 
dbOut.flush(); 
dbOut.close(); 
copy.close(); 

SQLiteOpenHelperを拡張し、データベースのインスタンスを取得するカスタムSQLIteOpenHelperクラスを作成します。あなたのような何かをコピーしたデータベースを開くことができます。

SQLiteDatabase.openDatabase(path_DB, null, SQLiteDatabase.OPEN_READONLY); 

またはthis tutorialを見て、データベースに向けてクエリを実行する方法の例については

SQLiteDatabase.openDatabase(path_DB, null, SQLiteDatabase.OPEN_READWRITE); 

関連する問題