20190925今日学习
2019-09-25 21:09
393 查看
一. sqlite数据库 - 什么情况下使用数据库:有大量相似结构数据的时候 - SQLiteOpenHelper:抽象的类,用来管理数据库的创建及版本的更新
- 创建一个类继承SQLiteOpenHelper
public class MyOpenHelp extends SQLiteOpenHelper { // 参数:context上下文、name数据库名称、factory创建结果集cursor对象类似resultset、version数据库版本编号从1开始 public MyOpenHelp( Context context) { super(context,"mydb.db", null, 1); } public MyOpenHelp(@Nullable Context context, @Nullable String name, @Nullable SQLiteDatabase.CursorFactory factory, int version) { super(context, name, factory, version); } //当数据库第一次创建的时候调用这个方法,特别适合做表结构初始化 @Override public void onCreate(SQLiteDatabase sqLiteDatabase) { // 可以进行增删改查 sqLiteDatabase.execSQL("create table info(" + "_id integer primary key autoincrement," + "name varchar(20)" + ")"); } // 当数据库版本升级的时候调用,适合做表结构的更新、只能升级不能降级 @Override public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) { } }
-
在主界面调用 ``public class MainActivity extends AppCompatActivity {
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); MyOpenHelp myOpenHelp = new MyOpenHelp(this); // 如果是第一次使用就是创建数据库,如果不是第一次就是打开数据库只读数据库和可写数据库区别是如果磁盘满了会返回一个只读的数据库 // SQLiteDatabase writableDatabase = myOpenHelp.getReadableDatabase(); SQLiteDatabase writableDatabase = myOpenHelp.getWritableDatabase();
} } ``
相关文章推荐
- 今日学习——有序链表的归并
- 今日学习——数组与指针
- 【今日学习】C++ Primer Plus 第六版——RTTI、代码重用(上)
- 今日学习分享:单例模式和包
- 通达OA-今日学习 精灵报错提示初始化失败
- 今日学习:BigIntger类
- 【IOS实例小计】今日开贴,记录我的ios学习生涯,留下点滴,留下快乐,成荫后人。
- 今日开始51CTO的纯学习博客
- 今日学习 (使用.NET Remoting 建立分布式应用程序(三))(4月8日) ——Remoting服务发布方式
- 今日学习记录
- 今日学习总结
- 一心想去今日头条,看看现在的招聘,警醒自己,每天不能太放纵,要想提高就得不断学习,拼命努力
- 20190926今日学习
- 929之今日学习
- 【学习随笔】今日项目代码遇到的两个问题
- 【今日学习】C++ Primer Plus 第六版——友元、内嵌类、异常
- 今日学习
- 今日学习
- [今日技术学习]sqlserver中not in 不好使得时候咋办?
- 今日学习之linux常用学习以及vim编辑器的运用,以及安装IDEA