Android使用資料庫時遇到的問題

2021-07-13 18:57:12 字數 1335 閱讀 4137

1、

idioms cannot be resolved or is not a field

問題原因:呼叫

r.raw.idioms

時程式報錯,經檢查發現我的資料庫未匯入

raw目錄中,匯入後發現仍報此錯誤

!仍報此錯誤的原因應該是系統不自動儲存資料,需手動更新。

解決辦法:只需要將

import android.r

檔案刪除,再重新匯入即可。

、ddms

開啟後找不到資料,只有

no client is select

問題原因:在測試

dbhelpertest

時,隨出現綠條,但報異常。

解決辦法:在呼叫資料庫的程式中,發現出現多加空格,拼寫出錯等問題。已解決的如圖所示:

......

public static final stringdb_name = "idioms.db";//

儲存的資料庫檔名

應用的包名

public static final stringdb_path = "/data"

+environment.getdatadirectory().getabsolutepath()+"/"

+package_name+"/databases";//

在手機裡存放資料庫的位置

private context context;

public dbopenhelper(contextcontext)

public sqlitedatabaseopendatabase()

string dbfile =mydatapath+"/"+db_name;

if(!(new file(dbfile).exists())){ //

判斷資料庫檔案是否存在,若不存在,則執行匯入,否則直接開啟資料庫

inputstream is = context.getresources().openrawresource(r.raw.idioms);//

匯入資料庫

fileoutputstream fos =new fileoutputstream(dbfile);

......

已經可以正常顯示

ddms

中資料庫檔案。

出現這種問題的原因在於自己的不細心。在使用資料庫檔案時,我們首先應該知道資料庫檔名、包名,定義在

dbopenhelper

裡,然後找到資料庫所在的位置後,建立路徑目錄,最後判斷其是否存在,不存在直接匯入即可。此過程中,不要出現一些細節錯誤,特別是因為幾個字母而無法獲取資料庫資訊的問題。

Android 使用資料庫 SQlite

搞android開發很久了,卻還沒有寫過sqlite 先寫寫基礎的,後面擴充。package com.king.android.db import android.content.contentvalues import android.content.context import android....

Android 使用Sqlite資料庫

一 把資料庫檔案如 citys.db 放到assets目錄下,再把這個檔案拷貝到資料庫對應的目錄 如下 if getdatabasepath filename exists 先判斷檔案是否存在,filename即 citys.db outstream.flush outstream.close in...

Android 使用資料庫GreenDao

implementation group org.greenrobot name greendao version 3.3.0 import org.greenrobot.greendao.annotation.entity import org.greenrobot.greendao.annota...