Android SQL 数据库使用(1)

写一个继承SQLiteOpenHelper 的类,重写2个抽象方法与一个构造方法。

super()方法中 返回context  与name   name是数据库名称。

factory是浮标好像  我们返回忽略他 返回null  就可以了。

version(版本号) 不能为0 不能为0  不能为0  最少1  我就出过好几次写了0 导致数据库一直报错。

onCreate(SQLiteDatabase)方法内 SQLiteDatabase有一个execSQL()与rawQuery() 方法;

execSQL()可以使用create(创建) insert(插入) delete(删除)  update(更新)这四种SQL语句。

create(创建表):db.execSQL("CREATE TABLE person(id integer PRIMARY KEY AUTOINCREMENT,A VARCHAR, B INTEGER)");

insert(插入):db.execSQL("insert into person (A,B)  values(?,?)",new Object[]{values1,values2});

delete(删除) :db.execSQL("delete from person where id=? ", new Object[] { id });

update(更新): db.execSQL("update  person set A=? , B=? where id=? ", new Object[] {A,B,id});

find(使用id来查找数据) db.rawQuery("select * from person where id=?",new String[] { String.valueOf(Id) });

find(多条件查询)select * from person where id=? and A=? and B=?" new String[] { String.valueOf(Id) ,A,B});

findAll(获取表中所有数据) db.rawQuery("select * from person",new String[] {  });

Sql的语句中,and是&  or 是|  与或 的表示形式。

查找数据的时候,如果你不添加条件,只添加表的情况下,他会返回表内所有的数据。

android 自带的方法有时候更好用一些,不过在速度上要比sql 语句要慢很多。

还有数据的事务,这个我不是很懂。

不过 事务 用于处理大量或者批量订单数据库操作,速度才会比 以上2个要快。

其他情况下,还是sql语句比较快。


专门写一个实体类和一个控制表的类结构会很清晰。插入 、删除、修改、查找 都写在控制类里面。

MVC是啥呢? 滑稽至上!

以上-------------------------------------------------------------------------------------------------------------------------

听说这是神兽?

反正我不信!

神兽能帮我们干完活吗?

  1. //┏┓   ┏┓  
  2. //┏┛┻━━━┛┻┓  
  3. //┃       ┃    
  4. //┃   ━   ┃    
  5. //┃ ┳┛ ┗┳ ┃  
  6. //┃       ┃ 
  7. //┃   ┻   ┃  
  8. //┃       ┃  
  9. //┗━┓   ┏━┛  
  10. //  ┃   ┃             
  11. //  ┃   ┃     
  12. //  ┃   ┗━━━┓  
  13. //  ┃       ┣┓  
  14. //  ┃       ┏┛  
  15. //  ┗┓┓┏━┳┓┏┛  
  16. //    ┃┫┫ ┃┫┫  
  17. //    ┗┻┛ ┗┻┛  
/-------------------------------------------------------------------------------------------------------------------------------/



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值