简体   繁体   中英

SQLite db file not found on Android

I am not able to find the db file where the database adapter is created a db and table. But i could see that the data is getting saved but i am not able to find my db file in my directories. But i am able to save the entries and viewed on my screen. Here is my DBAdapter class where i am creating the db..

public class DBAdapter {

    private static final String DB_NAME = "clientList.db";
    private static final int DB_VERSION = 1;
    private static final String TABLE_CLIENT = "CLIENT";
    private static final String COLUMN_CLIENT_ID = "CLIENT_ID";
    private static final String  COLUMN_CLIENT_NAME = "CLIENT_NAME";


    private static final String query = "create table test_1 " + " (COLUMN_CLIENT_ID integer primary key, COLUMN_CLIENT_NAME text)";


    private Context context;
    private SQLiteDatabase sqliteDatabase;
    private static DBAdapater dbAdapaterInstance;


    private DBAdapater(Context context){
        this.context = context;
        sqliteDatabase = new DatabaseHelper(this.context,DB_NAME,null,DB_VERSION).getWritableDatabase();
    }

    public static DBAdapater getDbAdapaterInstance(Context context){
        if(dbAdapaterInstance == null){
            dbAdapaterInstance = new DBAdapater(context);
        }
        return dbAdapaterInstance;
    }


    public boolean insert(int clientId , String name ){
        ContentValues contentValues = new ContentValues();
        contentValues.put(COLUMN_CLIENT_ID,clientId);
        contentValues.put(COLUMN_CLIENT_NAME,name);
        return sqliteDatabase.insert(TABLE_CLIENT,null,contentValues)>0;
    }

    public boolean delete(int ClientID){
        return sqliteDatabase.delete(TABLE_CLIENT, COLUMN_CLIENT_ID + "=" + ClientID,null)>0;
    }

    public boolean modify(int ClientID , String newClient){
    ContentValues contentValues = new ContentValues();
    contentValues.put(COLUMN_CLIENT_NAME,newClient);
    return sqliteDatabase.update(TABLE_CLIENT,contentValues,COLUMN_CLIENT_ID + "=" + ClientID,null)>0;

    }

    public List<DataBean> getClient(){
        List<DataBean> clientInfo = new ArrayList<DataBean>();
        Cursor cursor = sqliteDatabase.query(TABLE_CLIENT , new String[]{COLUMN_CLIENT_ID,COLUMN_CLIENT_NAME},null,null,null,null,null,null);
        if(cursor != null && cursor.getCount()>0){
            while (cursor.moveToNext()) {
                DataBean clientBean = new DataBean(cursor.getLong(0), cursor.getString(1));
                clientInfo.add(clientBean);
            }
        }
        return clientInfo;
    }

    //purpose of this class is to help outer class
    public class DatabaseHelper extends SQLiteOpenHelper{


        public DatabaseHelper(Context context , String databaseName , SQLiteDatabase.CursorFactory factory , int dbVersion){
            super(context, databaseName , factory , dbVersion);
        }



        @Override
        public void onCreate(SQLiteDatabase db) {

            db.execSQL(query);

        }

        @Override
        public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

        }
    }

}

Here is my bean class

public class DataBean {

    private long id;
    private String clientName;
    private String address;


    public DataBean(){
        super();
    }

    public DataBean(long id , String clientName){
        this.id = id;
        this.clientName = clientName;
    }

    public long getId() {
        return id;
    }

    public void setId(long id) {
        this.id = id;
    }

    public String getClientName() {
        return clientName;
    }

    public void setClientName(String clientName) {
        this.clientName = clientName;
    }
}

如果不指定任何路径,它将存储在应用程序目录的databases文件夹中。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM