对于sqlite也是第一次接触,本来不打算出这篇博客,但是原谅我的强迫症吧,可能内容比较少。以后边学习边更新。

然后再说一下我对sqlite的理解:它就是一个超轻量级别的数据库。轻到什么程度上呢,它基本不用自己写sql语句,用已经封装好的方法就可以了,存储方法就是在手机上存储了,和“android中的数据存储方式(一)”中说到的文件存储方法的文件存储位置差不多。

① 先写个sqlite辅助类:

public class DatabaseHelper extends SQLiteOpenHelper {    static int VERSION = 1;    public DatabaseHelper(Context context, String name, CursorFactory factory,            int version) {        super(context, name, factory, version);    }    //创建数据库调用此构造函数    public DatabaseHelper(Context context, String name) {        this(context, name, VERSION);    }    //更新数据库版本调用此构造函数    public DatabaseHelper(Context context, String name, int version) {        this(context, name, null, version);    }    @Override    public void onCreate(SQLiteDatabase db) {        // 创建数据库sql语句        String sql = "CREATE TABLE user (id int PRIMARY KEY,name varchar(20))";        // 把id设置为主键        // 执行数据库操作        db.execSQL(sql);    }    @Override    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {    }}

②创建数据库并建表、对数据的增删查改:

//创建数据库并建表的代码DatabaseHelper dbHelper1 = new DatabaseHelper(MainActivity.this,"zwq");            // 取得一个只读的数据库对象            SQLiteDatabase db1 = dbHelper1.getReadableDatabase();
//增加数据//创建存放数据的ContentValues对象            ContentValues cv1 = new ContentValues();            //向对象中放入数据            cv1.put("id", 1);            cv1.put("name", "nihao");            DatabaseHelper dbHelper3 = new DatabaseHelper(MainActivity.this,"zwq");            SQLiteDatabase db3 = dbHelper3.getWritableDatabase();            long a = db3.insert("user", null, cv1);            /*a如果返回-1,则证明数据插入失败;返回正数表示插入了几条数据*/
//更新数据代码:DatabaseHelper dbHelper4 = new DatabaseHelper(MainActivity.this,"zwq");            SQLiteDatabase db4 = dbHelper4.getWritableDatabase();            ContentValues cv2 =  new ContentValues();            cv2.put("name", "你好");            long b = db4.update("user", cv2, "id=?", new String[]{"1"});            /*b表示了更新了几行*/
//查询数据DatabaseHelper dbHelper5 = new DatabaseHelper(MainActivity.this,"zwq");            SQLiteDatabase db5 = dbHelper5.getReadableDatabase();             //创建游标对象             Cursor cursor = db5.query("user", new String[]{"id","name"},                     "id=?", new String[]{"1"}, null, null, null,null);            //利用游标遍历所有数据对象             while(cursor.moveToNext()){                String name = cursor.getString(cursor.getColumnIndex("name"));  }//读取游标数据的第二种方法/*if (cursor.moveToFirst()) { for (int i = 0; i < cursor.getCount(); i++) { cursor.moveToPosition(i); String name = cursor.getString(cursor.getColumnIndex("name")); } }*//*如果不明白游标百度吧,就是个用来存放数据的一个类,变量name就是最后获得的数据*/
//删除数据DatabaseHelper dbHelper6 = new DatabaseHelper(MainActivity.this,"zwq");            SQLiteDatabase db6 = dbHelper6.getWritableDatabase();            long c = db6.delete("user", "id=?", new String[]{"1"});            /*c表示删除了几行数据*/

sqlite是不是很简单?确实是很简单。。。

我有空还想研究研究sqlite版本更新到底有什么用,我没有研究透所以代码就不放了。

如果还有强迫症的同志们,非要在手机上看到数据库的变化,就去我的另一篇博客”android中的数据存储方式(一)”看看吧~~大概是在最后的位置。

前几天用这个东西中招了,真的是活活纠结了一天,结果得出的结论就是建库的问题,建议在做测试的时候如果对建库建表进行修改的时候,在运行前先把以前的APP删掉

参考代码:

http://download.csdn.net/detail/zhengyikuangge/9508207

更多相关文章

  1. 一句话锁定MySQL数据占用元凶
  2. Android客户端与服务器端数据同步
  3. Android应用架构之MVP实现
  4. Android中ListView分页加载数据功能实现
  5. 面试问题之:Android中ListView分页加载数据
  6. 【Android动态布局】之【ListView动态加载数据】
  7. Android实现电量控制降低耗电
  8. Android:复杂数据模型的传递(了解下吧)
  9. Android(安卓)4 通过 USB 连接扫描枪 获得扫描信息 解决扫描枪接

随机推荐

  1. Android启动之bluetooth
  2. Android(安卓)SQLite框架greenDAO的使用
  3. Android工程的编译过程
  4. Android语音识别方法
  5. 初学者关于学习android中关于实现用户输
  6. Android中Input型输入设备驱动原理分析
  7. Android的相关文件类型
  8. Android(安卓)selector状态选择器的使用
  9. T-Mobile G3是华为的android
  10. Android(安卓)内存管理