您的位置:首页 > 移动开发 > Android开发

Android 数据库

2020-07-14 05:52 288 查看

  网络111 徐京浩

Android采用关系型数据库SQLite3,它是一个支持SQL轻量级的嵌入式数据库,在嵌入式操作上有很广泛的,WM采用的也是SQLite3

        关于过于、原理方面的东西在这篇文章里不会提到,但是如果你想能够快速的学会操作SQLite3,那这就是你要找的文章!



        首先,我们看一下api,所有数据库相关的接口、类都在.database和android.database.sqlite两个包下,虽然只有两个包,但是如果你英文不好或是太懒的话也要迷茫一段时间,其实,我们真正用的到的没有几个!

        1、SQLiteOpenHelper (android.database.sqlite.SQLiteOpenHelper)

        这是一个抽象类,关于抽象类我们都知道,如果要使用它,一定是继承它!

        这个类的方法很少,有一个构造方法



        SQLiteOpenHelper(android.content.Context context,                 java.lang.String name,android.database.sqlite.SQLiteDatabase.CursorFactory factory, int version);
        参数不做过多的解释,CursorFactory一般直接传null就可以

        public void onCreate(SQLiteDatabase db)
        此方法在创建数据库是被调用,所以,应该把创建表的操作放到这个方法里面,一会儿在后面我们会再详细的说如何创建表
        public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)


        从方法名上我们就能知道这个方法是执行更新的,没错,当version改变是系统会调用这个方法,所以在这个方法里应该执行删除现有表,然后手动调用onCreate的操作



        SQLiteDatabase getReadableDatabase()  

        可读的SQLiteDatabase对象

        SQLiteDatabase getWritableDatabase()  
        获取可写的SQLiteDatabase对象

        2、SQLiteDatabase(android.database.sqlite.SQLiteDatabase)

        关于操作数据库的工作(增、删、查、改)都在这个类里
        execSQL(sql)
        执行SQL语句,用这个方法+SQL语句可以非常方便的执行增、删、查、改

        除此之外,Android还提供了功过方法实现增、删、查、改
        long insert(TABLE_NAME, null, contentValues)添加记录
        int delete(TABLE_NAME, where, whereValue)删除记录
        int update(TABLE_NAME, contentValues, where, whereValue) 更新记录
        Cursor query(TABLE_NAME, null, null, null, null, null, null) 查询记录

        除此之外,还有很多方法,如:beginTransaction()开始事务、endTransaction()结束事务...有兴趣的可以自己看api,这里就不多赘述了

转载于:https://www.cnblogs.com/loveliying/p/3144521.html

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: