数据存储--SQLite创建数据库
来源:互联网 发布:自然之名酵母水 知乎 编辑:程序博客网 时间:2024/05/29 14:58
SQLite简介
- SQLite是安卓系统中内置的轻量级的数据库,可以应用于数据的存储,比之文件存储和SharePreference存储数据,具有更加的灵活性,存储量更大,数据也更加复杂。
创建数据库
- android为了然我们更加方便的管理数据库,专门提供了一个SQLiteOpenHelper帮助类,借助这个类就可以非常简单地对数据库进行创建和升级。
- SQLiteOpenHelper中有两个非常重要的实例方法:getReadableDatabase()和getWritableDatabase()
- 创建数据库的代码如下:
public class MyDatabaseHelper extends SQLiteOpenHelper { private Context context; public static final String CREATE_STUDENT="create table book(id integer primary key autoincrement,name text,age integer,clazz text)"; public MyDatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) { super(context, name, factory, version); this.context=context; } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(CREATE_STUDENT); Toast.makeText(context, "数据库创建成功", Toast.LENGTH_SHORT).show(); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { }}
- public MyDatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version)
- 其中的四个参数为主线程的引用,数据库的名称,自定义的cursor对象,数据库的版本号,版本号最小为1
- 创建数据库的代码
myDatabaseHelper=new MyDatabaseHelper(this,"school.db",null,1); myDatabaseHelper.getWritableDatabase();
- 当创建了数据库之后,重复执行上面的代码,不会重复创建。
升级数据库
- 如果我们要添加一张表到上面的数据库中,我们就要升级数据库了。
- 注意在onUpgrade()方法中代码的填写
- 相应的代码如下:
public class MyDatabaseHelper extends SQLiteOpenHelper { private Context context; public static final String CREATE_STUDENT="create table book(id integer primary key autoincrement,name text,age integer,clazz text)"; public static final String CREATE_HELLOWORD="create table helloword(id integer primary key autoincrement,name text,age integer,clazz text)"; public MyDatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) { super(context, name, factory, version); this.context=context; } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(CREATE_STUDENT); db.execSQL(CREATE_HELLOWORD); Toast.makeText(context, "数据库创建成功", Toast.LENGTH_SHORT).show(); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL("drop table if exists book"); db.execSQL("drop table if exists helloword"); Toast.makeText(context, "升级成功", Toast.LENGTH_SHORT).show(); onCreate(db); }}
- 同时在逻辑代码中,创建数据库的时候,我们要将数据库的版本号更改为比上一次大的数据,这样就会执行onUpgrade()方法中的代码了
myDatabaseHelper=new MyDatabaseHelper(this,"school.db",null,3); db=myDatabaseHelper.getWritableDatabase();
adb shell查看数据库数据
- adb是Android SDK中自带的一个工具,使用这个工具,可以直接对模拟器或手机进行调试。他存放在sdk的platfrom-tools目录下,需要把它的路径配置到环境变量中。
将其路径配置到path系统变量中。
查看数据库内容的代码示例:
0 0
- 创建sqlite数据库存储数据
- 数据存储--SQLite创建数据库
- 在本地创建SQLite数据库存储数据
- SQLite存储--创建数据库
- SQLite数据库存储数据
- SQLite数据库存储数据
- SQLite数据库存储数据
- SQLite数据库存储数据
- SQLite数据库存储数据
- SQLite数据库存储数据
- SQLite数据库存储数据
- SQLite数据库存储数据
- SQLite数据库存储数据
- Sqlite数据库存储数据
- android-数据存储-SQLite数据库
- 使用SQLite数据库存储数据
- android-SQLite数据库存储数据
- android数据存储----SQLite数据库
- 音频-AudioComponentDescription 类型设置
- 获取系统的相关信息
- UVA 10069 dp+高精度
- javascript小方法之数组去重、数字转成逗号分隔、html元素去标签
- 120. Triangle
- 数据存储--SQLite创建数据库
- [矩阵快速幂] LightOJ 1142 - Summing up Powers (II)
- -bash: rz: command not found
- 设计模式C++生成器模式
- hdu1434(优先队列&&模拟)
- c++primer(第五版) 第十四章 重载运算与类型转换习题答案
- Android之LayoutInflater
- 往手机插入联系人
- 倒排文件索引结构和搜索算法