zoukankan      html  css  js  c++  java
  • Android下数据库创建

    在Android下用的数据库是:sqlite,嵌入式 轻量级的

    创建sqlite数据库一般是去继承SQLiteOpenHelper类。

    官方文档是这样的:

    由于是一个抽象类就必须用一个类去继承它,里面有两个抽象方法onCreate和onUpgrade必须去实现。

    onCreate方法:是数据库第一次创建的时候会调用(但创建了的话就不会调用),特别适合做表结构初始化,需要sql语句

    onUpgrade方法:数据库版本号发生改变时才会执行,特别适合做表结构的修改,在Android4.0之后版本只能增不能减,不然会出现异常

    下面创建一个MySqliteOpenHelper类去继承SQLiteOpenHelper类。

     1 public class MySqliteOpenHelper extends SQLiteOpenHelper {
     2 
     3     public MySqliteOpenHelper(Context context) {
     4         //context:上下文  name:数据库文件的名称  factory:用来创建cursor对象,默认null
     5         //version:数据库的版本号,从1开始,如果发生改变,onUpgrade方法会调用
     6         super(context, "Starry.db", null, 2);
     7     }
     8     @Override
     9     public void onCreate(SQLiteDatabase db) {
    10         
    11         db.execSQL("create table info (_id integer primary key autoincrement, name varchar(20))");
    12     }
    13     @Override
    14     public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    15         db.execSQL("alter table info add phone varchar(11)");
    16     }
    17 
    18 }
    View Code

    在MainActivity.java实例化一个MySqliteOpenHelper,运行getReadableDatabase方法就可以初始化数据库了。

    1     MySqliteOpenHelper mySqliteOpenHelper = new MySqliteOpenHelper(mContext);
    2     mySqliteOpenHelper.getReadableDatabase();
    View Code
  • 相关阅读:
    STL_算法_05_集合算法
    STL_算法_04_算术和生成算法
    STL_算法_03_拷贝和替换算法
    STL_算法_02_排序算法
    STL_算法_01_查找算法
    STL_容器使用时机
    STL_容器共通能力
    Qt5_选择文件对话框
    Qt5_当前exe所在路径
    Java 静态代理和动态代理
  • 原文地址:https://www.cnblogs.com/xingkongyihao/p/7367325.html
Copyright © 2011-2022 走看看