0
事前に作成されたデータベースを照会することができません。 SQLiteDatabaseBrowser
を使用してSQLite
データベースを作成しました。 SQLiteDatabaseBrowser
で 次query
作品:あらかじめ作成されたデータベースを照会できません
SELECT png FROM flags64 WHERE iso3='jpn' LIMIT 1
私は、Android Studioにアンドロイドプロジェクト内のフォルダ"../assets/databases"
にファイルを移動しました。 これは私のAndroidアプリからデータベースを照会するために使用するコードです:
SQLiteDatabase db = null;
try {
db = getApplicationContext().openOrCreateDatabase(getApplicationContext().getDatabasePath("mysticker.db").getPath(), Context.MODE_PRIVATE, null);
Cursor result = null;
try {
result = db.rawQuery(String.format("SELECT png FROM flags64 WHERE iso3='%s' LIMIT 1", country.toLowerCase()), null);
if (result.getCount()>0) {
result.moveToFirst();
byte[] png = result.getBlob(result.getColumnIndex("png"));
ByteArrayInputStream inputStream = new ByteArrayInputStream(png);
playerCountryFlag.setImageBitmap(BitmapFactory.decodeStream(inputStream));
}
} catch (Exception e) {
Log.e("mySticker", e.getStackTrace().toString());
} finally {
if (result != null) {
result.close();
}
}
} finally {
if (db.isOpen()) {
db.close();
}
}
は、クエリがレコードを返さないコードをデバッグします。
最初にcountry.toLowerCase()が 'jpn'を返すことを確認します。次に、文字列連結を使用してクエリを構築しますが、パラメータバインディングを使用しないでください。 – StephaneM