Android学习笔记_SQLite数据库存储
来源:互联网 发布:淘宝微淘视频怎么发布 编辑:程序博客网 时间:2024/05/02 04:18
亲,你知道吗?Android系统内置了数据库哟~
SQLite,一款轻量级关系数据库,运算速度快,占用资源少,特别适合在移动设备上使用。
SQLite支持标准SQL语法,遵循数据库ACID事务(原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability))。
SQLiteOpenHelper帮助类,让我们更方便的管理数据库。
抽象类,2个抽象方法:
onCreate(SQLiteDatabase db)
onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)。
话不多说,直接上代码。
package com.billjobs.cqdatabasetest;import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class MainActivity extends Activity { private MyDataBaseHelper dbHelper; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //CQ:第一次点击按钮时,检测当前程序中没有BookStore.db数据库 //因此创建该数据库并调用MyDataBaseHelper onCreate()方法,创建数据库和表 //再次点击时,因为数据库已经存在,不会再创建 dbHelper = new MyDataBaseHelper(this, "BookStore.db", null, 1); Button createDataBase = (Button) findViewById(R.id.btn_create_database); createDataBase.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { dbHelper.getWritableDatabase(); } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; }}
package com.billjobs.cqdatabasetest;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteDatabase.CursorFactory;import android.database.sqlite.SQLiteOpenHelper;import android.widget.Toast;public class MyDataBaseHelper extends SQLiteOpenHelper { //将建表语句定义成字符串常量 public static final String CREATE_BOOK = "create table book(" + "id integer primary key autoincrement," + "author text," + "price real," + "pages integer" + "name text)"; private Context mContext; public MyDataBaseHelper(Context context, String name, CursorFactory factory, int version) { super(context, name, factory, version); mContext = context; } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(CREATE_BOOK); //CQ:数据库完成的同时创建Book表 Toast.makeText(mContext, "CQ:Create!", Toast.LENGTH_SHORT).show(); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // TODO Auto-generated method stub }}
0 0
- Android学习笔记_SQLite数据库存储
- android之存储篇_SQLite数据库
- 数据库存储_SQLite
- android学习之存储篇_SQLite数据库、SQLite学习看我就够了
- Android开发_SQLite数据库
- Android开发——数据持久存储_SQLite数据库
- android之存储篇_SQLite存储方式
- android(16)_数据存储与访问_SQLite数据库_数据库的创建管理
- android(17)_数据存储与访问_SQLite数据库_修改数据库
- android之存储篇_SQLite数据库_让你彻底学会SQLite的使用
- android之存储篇_SQLite数据库_让你彻底学会SQLite的使用
- android之存储篇_SQLite数据库_让你彻底学会SQLite的使用
- android之存储篇_SQLite数据库_让你彻底学会SQLite的使用
- android之存储篇_SQLite数据库_让你彻底学会SQLite的使用
- android之存储篇_SQLite数据库_让你彻底学会SQLite的使用<转载>
- android之存储篇_SQLite数据库_让你彻底学会SQLite的使用
- android之存储篇_SQLite数据库_让你彻底学会SQLite的使用
- android之存储篇_SQLite数据库_让你彻底学会SQLite的使用
- HPU 1002 A + B Problem II【大数】
- mybatis一对多的配置
- AdapterView性能优化(ListView,GridView,Gallery,Spinner)
- JVM 垃圾收集器介绍
- 视音频编解码学习工程:H.264分析器
- Android学习笔记_SQLite数据库存储
- WebService笔记(第三弹:使用CXF开发WebService)
- JVM 内存管理
- UML中的用例图
- 数字图像处理与机器视觉第0章归纳
- Linux下接收处理GPS数据
- maven 使用 一
- Jedis使用总结【pipeline】【分布式的id生成器】【分布式锁【watch】【multi】】【redis分布式】
- 一周知识点总结20150726