简介 目录 评价 推荐
  • 马东369 2020-05-27
    有源码吗??????

    那么简单自己写就可以了

    1回答·734浏览
  • 滄梧 2020-01-18
    如何导入已有数据库

    操作方法:1. 把原数据库包括在项目源码的 res/raw 目录下,然后建立一个DBManager类,代码如下:

    12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758package com.android.ImportDatabase; import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream; import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.os.Environment;import android.util.Log; public class DBManager {    private final int BUFFER_SIZE = 400000;    public static final String DB_NAME = "countries.db"; //保存的数据库文件名    public static final String PACKAGE_NAME = "com.android.ImportDatabase";    public static final String DB_PATH = "/data"            + Environment.getDataDirectory().getAbsolutePath() + "/"            + PACKAGE_NAME;  //在手机里存放数据库的位置     private SQLiteDatabase database;    private Context context;     DBManager(Context context) {        this.context = context;    }     public void openDatabase() {        this.database = this.openDatabase(DB_PATH + "/" + DB_NAME);    }     private SQLiteDatabase openDatabase(String dbfile) {        try {            if (!(new File(dbfile).exists())) {  //判断数据库文件是否存在,若不存在则执行导入,否则直接打开数据库                InputStream is = this.context.getResources().openRawResource(                        R.raw.countries); //欲导入的数据库                FileOutputStream fos = new FileOutputStream(dbfile);                byte[] buffer = new byte[BUFFER_SIZE];                int count = 0;                while ((count = is.read(buffer)) > 0) {                    fos.write(buffer, 0, count);                }                fos.close();                is.close();            }            SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase(dbfile,                    null);            return db;        } catch (FileNotFoundException e) {            Log.e("Database", "File not found");            e.printStackTrace();        } catch (IOException e) {            Log.e("Database", "IO exception");            e.printStackTrace();        }        return null;    }


    1回答·915浏览
  • qq_慕圣4549127 2018-12-06
    点击创建数据库并插入数据按钮异常退出app

    主键重复插入错误,因主键要保持唯一性故报错

    1回答·274浏览
  • qq_一只灰太狼_0 2018-05-03
    创建数据库

    看报错日志呀

    1回答·1350浏览
  • 以后的以后艾米修 2017-03-22
    创建多张表

    建表的话要注意使用单例模式,防止重复建表而报错

    2回答·1332浏览
数据加载中...
开始学习 免费