SQLite数据库的创建和编辑

这里就简单写一下如何在安卓中使用java代码创建一个本地数据库,并且导出后如何进行编辑数据的基本步骤

  • 首先我们需要稍微的了解一下这个SQLite数据库

  1. SQLite是一款轻量级的关系型数据库,它的运算速度非常快,占用资源很少
  2. SQLite不仅支持标准的SQL语法,还遵循了数据库的ACID事务
  3. SQLite的核心引擎本身不依赖第三方的软件,使用它也不需要"安装"。
  4. 数据库中所有的信息(比如表、视图等)都包含在一个文件内。这个文件可以自由复制到其它目录或其它机器上。
  5. 可移植性非常不错
  6. 最重要的还是开源 (开源大法好~)
  • 我们先得需要创建一个用于存放SQL语句的SQL类(这里我创建了一个MyDatabaseHelper类)

/**
创建的SQL类必须继承SQLiteOpenHelper并实现其方法
这里我们为了方便讲sql语句写在常量CRETE_USER中
类中我们一共实现了三个方法(一个是自动生成的构造方法)

MyDatabaseHelper()构造方法,
第一个参数Context
第二个参数数据库名
第三个参数cursor允许我们在查询数据的时候返回一个自定义的光标位置,一般传入的都是null
第四个参数表示目前库的版本号(用于对库进行升级)

onCreate()方法便是在第一次创建数据库初才执行的,所以这里我们将sql语句放在内执行。
db.execSQL()执行sql语句
创建完后 我们写一个提示信息
onUpgrade()方法便是在需要升级数据库时使用的,我们可以对数据库进行一些操作
*/
public class MyDatabaseHelper extends SQLiteOpenHelper {
    public static final String CRETE_USER = "create table user("
            + " id integer primary key autoincrement,"
            + "author text,"
            + "price real,"
            + "pages integer,"
            + "name text)";
    private Context mcontext;

    public MyDatabaseHelper(@Nullable Context context, @Nullable String name, @Nullable SQLiteDatabase.CursorFactory factory, int version) {
        super(context, name, factory, version);
        this.mcontext = context;
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        db.execSQL(CRETE_USER);
        Toast.makeText(mcontext, "数据库创建成功", Toast.LENGTH_SHORT).show();

    }

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

    }
}
  • 然后我们来通过一个按钮来执行创建,这里我就不写布局了,直接java代码啦

public class MainActivity extends AppCompatActivity {
    /**
    当在程序当中调用这个类的方法getWritableDatabase()或者 
    getReadableDatabase()方法的时候,如果当时没有数据,
    那么Android系就会自动生成一个数据库
    但区别在于当数据库不可写入的时候getReadableDatabase()方法
    返回的对象将以只读的方式去打开数据库,而getWriteDatabase()将出现异常
    */
    private MyDatabaseHelper helper ;//声明对象
    private Button btn1 ;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        helper = new MyDatabaseHelper(this,"BookStore.db",null,1);//传入数据等
        btn1 = findViewById(R.id.btn1);
        btn1.setOnClickListener(new View.OnClickListener() {//点击事件
            @Override
            public void onClick(View v) {
                helper.getWritableDatabase();
            }
        });
        SQLiteStudioService.instance().start(this);
    }

    @Override
    protected void onDestroy() {
        SQLiteStudioService.instance().stop();
        super.onDestroy();
    }
}
  • 完成后,我们来看一下效果


  • 再来通过AS里面的工具查看一下是否在本机中创建


通过两张图我们可以发现本机的SQLite数据库已经创建成功了,那么我们该怎么来编辑数据库。

-### 首先我们如果通过adb Shell来登录,那么就得先配置环境变量(如图)

在安装SDK的时候,系统已经默认安装了SQLite了。所以我们只需要将SDK安装路径下的platform-tools路径添加到系统变量中的path就可以啦

环境变量配置好后我们还需要一个可视化工具,这里我用的就是SQLiteStudio,至于详细的具体操作就百度吧~ 哈哈,这里我们重点讲的是安卓使用工具来编辑数据库

  • SQLitestudio提取码:8vne
  • 安装包就自行下载(记得关注哦)

  • 安装过程就跟着install一遍过就可以了,那么我们打开工具之前我们得先配置一下

  1. 在SQLiteStudio中添加插件

  2. 在AndroidStudio中添加添加好的jar包

  3. 在项目中的OnCreate和OnDestroy方法里添加下面代码(仔细的话会发现我上面添加过这些代码)

SQLiteStudioService.instance().start(this);

SQLiteStudioService.instance().stop();

  1. 配置完后我们就可以在SQLiteSutdio中添加数据库了


当然,这种方法添加的数据库只有本机在线的时候数据库才能正常使用哦

今天又是适合学习的一天 嘻嘻~

文章作者: 大熊先生
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 大雄先生
MySQL
喜欢就支持一下吧