android数据库sqlite基本操作。

  Android使用开源的、与操作系统无关的SQL数据库—SQLite。它是一款轻量级数据库,只需要几百K的内存就够了,无需单独安装。

一 扩展类

  SQLiteOpenHelper

 1 Android 不自动提供数据库。在 Android 应用程序中使用 SQLite,必须自己创建数据库,然后创建表、索引,填充数据。Android 提供了 SQLiteOpenHelper 帮助你创建一个数据库,你只要继承 SQLiteOpenHelper 类,就可以轻松的创建数据库。SQLiteOpenHelper 的子类,至少需要实现三个方法:

  构造函数,调用父类 SQLiteOpenHelper 的构造函数

  onCreate()方法;// TODO 创建数据库后,对数据库的操作

  onUpgrage()方法。// TODO 更改数据库版本的操作

  当你完成了对数据库的操作(例如你的 Activity 已经关闭),需要调用 SQLiteDatabase 的 Close() 方法来释放掉数据库连接。

  操作数据库的最佳实践是创建一个辅助类,例如联系人模块

  class ContactsDatabaseHelper extends SQLiteOpenHelper

2  Cursor类

  Android使用 Cursor类返回一个需要的值,Cursor作为一个指针从数据库查询返回结果集,使用Cursor允许Android更有效地管理它们需要的行和列,你使用 ContentValues对象存储键/值对,它的 put()方法允许你插入不同数据类型的键值。
二 Sqlite数据库基本语句
<1>

下面我们来创建一个名为Test的数据库,并返回一个SQLiteDatabase对象mSQLiteDatabase。

mSQLiteDatabase=this.openOrCreateDatabase("Test",MODE_PRIVATE,null);

创建表

  通过execSQL方法来执行一条SQL语句。

String CREATE_TABLE="create table 表名(主键(_id),列名,列名,……)";
mSQLiteDatabase.execSQL(CREATE_TABLE);

  创建表的时候总要确定一个主键,这个字段是64位整型,别名_id。其特点就是自增长功能(_id INTEGER PRIMARY KEY)。当到达最大值时,会搜索该字段未使用的值(某些记录被删除_rd会被回收),所以要唯一严格增长的自动主键必须加入关键字autoincrement。

删除表

mSQLiteDatabase("drop table 表名");

<2>

修改数据

 插入记录

可以使用insert方法来添加数据,但是insert方法要求把数据都打包到ContentValues中,ContentValues其实就是一个Map,Key值是字段名称,Value值是字段的值。通过ContentValues的put方法就可以把数据放到ContentValues对象中,然后插入到表中去。具体实现如下:

复制代码
ContentValues cv=new ContentValues();
cv.put(TABLE_NUM,1);
cv.put(TABLE_DATA,"测试数据库数据");
mSQLiteDatabase.insert(Test,null,cv);

//同样可以使用execSQL方法来执行一条“插入“的SQL语句

String INSERT_DATA="insert into 表名(列名,……) values (值,……)";
mSQLiteDatabase.execSQL(INSERT_DATA);
复制代码

 更新记录

复制代码
ContentValues cv=new ContentValues();
cv.put(TABLE_NUM,3);
cv.put(TABLE_DATA,"修改后数据");
mSQLiteDatabase.update(Test,cv,"num"+"="+rowId,null);

//同样可以使用execSQL方法来执行一条“更新”的SQL语句

String UPDATE_DATA="update 表名 set 列名=xxx where xxx;
mSQLiteDatabase.execSQL(UPDATE_DATA);
复制代码



 删除记录

//要删除数据可以使用delete方法
mSQLiteDatabase.delete("Test","WHERE _id="+0,null);

//也可以通过execSQL方法执行SQL语句删除数据
mSQLiteDatabase.execSQL("delete from 表名 where 条件");


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值