1. package com.shawn.test;
    2. import android.content.ContentValues;
    3. import android.content.Context;
    4. import android.database.Cursor;
    5. import android.database.sqlite.SQLiteDatabase;
    6. import android.database.sqlite.SQLiteOpenHelper;
    7. import android.util.Log;
    8. public class DatabaseAdapter{
    9. private static final String DB_NAME = "Test.db";    //数据库名
    10. private static final int    DB_VERSION = 1;         //数据库版本
    11. private static final String DB_TABLE = "my_order";  //表名
    12. private static final String KEY_ID = "_id";         //id
    13. private static final String KEY_ORDER_ID = "order_id";  //订单号
    14. private static final String KEY_TYPE = "_type";         //订单类型
    15. private static final String KEY_STATE = "_state";       //订单状态
    16. private Context context;
    17. private DatabaseHelper mDatabaseHelper;
    18. private SQLiteDatabase mSQLiteDatabase;
    19. private static class DatabaseHelper extends SQLiteOpenHelper{
    20. //创建数据库语句
    21. private static final String DB_CREAT = "CREATE TABLE "
    22. + DB_TABLE
    23. + " (" + KEY_ID + " INTEGER PRIMARY KEY,"
    24. + KEY_ORDER_ID + " TEXT,"
    25. + KEY_TYPE + " INTEGER,"
    26. + KEY_STATE + " INTEGER)";
    27. public DatabaseHelper(Context context) {
    28. super(context, DB_NAME,  null , DB_VERSION);
    29. }
    30. @Override
    31. public void onCreate(SQLiteDatabase db) {
    32. // TODO Auto-generated method stub
    33. db.execSQL(DB_CREAT);
    34. }
    35. @Override
    36. public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    37. // TODO Auto-generated method stub
    38. db.execSQL("DROP TABLE IF EXISTS "+DB_TABLE);
    39. onCreate(db);
    40. }
    41. }
    42. public DatabaseAdapter(Context context) {
    43. this.context = context;
    44. }
    45. //开启
    46. public void open() {
    47. mDatabaseHelper = new DatabaseHelper(context);
    48. mSQLiteDatabase = mDatabaseHelper.getWritableDatabase();
    49. }
    50. //关闭
    51. public void close() {
    52. mSQLiteDatabase.close();
    53. mDatabaseHelper.close();
    54. }
    55. //增
    56. public long insertData(String orderId, int type) {
    57. ContentValues values = new  ContentValues();
    58. values.put(KEY_ORDER_ID, orderId);
    59. values.put(KEY_TYPE, type);
    60. values.put(KEY_STATE, Config.STATE_APPLY);
    61. long id = mSQLiteDatabase.insert(DB_TABLE, KEY_ID, values);
    62. return id;
    63. }
    64. //删
    65. public boolean deleteData(Context context, long id) {
    66. boolean delete = mSQLiteDatabase.delete(DB_TABLE, KEY_ID + "=" +id, null)>0;
    67. return delete;
    68. }
    69. //改
    70. public boolean updateData(long id, int state) {
    71. ContentValues values = new  ContentValues();
    72. values.put(KEY_STATE, ""+state);
    73. boolean update = mSQLiteDatabase.update(DB_TABLE, values, KEY_ID + "=" +id, null)>0;
    74. return update;
    75. }
    76. //查
    77. public Cursor fetchData(String selection) {
    78. Cursor mCursor = mSQLiteDatabase.query(DB_TABLE, new String[]{KEY_ID, KEY_ORDER_ID, KEY_TYPE, KEY_STATE}, selection, null, null, null, null);
    79. if(mCursor != null)
    80. mCursor.moveToFirst();
    81. return mCursor;
    82. }
    83. }

Android SQLiteDatabase的使用的更多相关文章

  1. Android:Sqlitedatabase学习小结

    今天刚刚学习完Sqlite数据库的基础知识,随即把学到的东西记录下来,以便随后查阅,以下是自己对Sqlite数据库的小结:1.Sqlite简介       Sqlite是一款轻型的数据库,它包含在一个 ...

  2. Android SQLiteDatabase分析

    Android中的数据存储使用的小巧的SQLite数据库. 为了方便java层使用SQLite,android做了大量的封装.提供了一些列的类和API.本文章就揭露这些封装背后的类图关系. 老规矩,首 ...

  3. Android SQLiteDatabase使用总结

    SQLiteDatabase数据库操作 1.创建一个继承了类SQLiteOPenHelper类复写相应的方法,和构造函数 2.然后创建一个类,定义一个私有变量(上述类的实例化对象),在构造函数中进行初 ...

  4. Android sqlitedatabase 事务

    SQLiteDatabase的beginTransaction()方法可以开启一个事务,程序执行到endTransaction() 方法时会检查事务的标志是否为成功,如果为成功则提交事务,否则回滚事务 ...

  5. Android SQLiteDatabase中query、insert、update、delete方法参数说明

    1.SQLiteDataBase对象的query()接口: public Cursor query (String table, String[] columns, String selection, ...

  6. android SQLiteDatabase数据库使用的时候 常见问题

    用数据库的时候有时候一定要用_id否则会报错 对于Contentprovider的查询用contentResolver.insert()      一般的数据库操作用db.insert();

  7. Android Sqlite数据库执行插入查询更新删除的操作对比

    下面是在Android4.0上,利用Sqlite数据库的insert,query,update,delete函数以及execSql,rawQuery函数执行插入,查询,更新,删除操作花费时间的对比结果 ...

  8. 4、Android-数据存储方案(SQLite数据库存储)

    4.4.SQLite数据库存储 这是Android内置的数据库 是一款轻量级的关系型数据库 运算速度非常快.占用资源少.通常只需要几百kb的内存就够了 因而特别适合在移动端设备上使用 SQLite不仅 ...

  9. Android本地数据存储之SQLite关系型数据库 ——SQLiteDatabase

    数据库的创建,获取,执行sql语句: 框架搭建:dao 思考: 1.数据库保存在哪里? 2.如何创建数据库?如何创建表? 3.如何更新数据库?如何更改表的列数据? 4.如何获取数据库? 5.如何修改数 ...

随机推荐

  1. LocalDB数据库修改排序规则,修复汉字变问号

    VS中新增的轻量级数据库LocalDB,有个这个,开发人员就不必再安装庞大的SQL server了,可以方便地测试运行小型项目:既然是轻量级数据库,它抛弃了庞大的身躯,功能上当然也会受到局限,其中之一 ...

  2. CCIE总结:路由器、交换机

    bbs.spoto.net/forum--.html -----雏鹰部落 GNS3安装 .安装的所有目录不能使用中文 ISO如何操作 securecrt如何使用建立会话:之前总是连不上的原因是没有选 ...

  3. Linux 系统中用Systemd 管理系统服务

    Systemd  命令详解: https://www.digitalocean.com/community/tutorials/how-to-use-systemctl-to-manage-syste ...

  4. python-数据库-优化

    数据库的优化? 1. 优化硬件:采用SSD(固态驱动器,俗称固态硬盘),使用磁盘队列技术(RAID0,RAID1,RDID5)等: 2. 进行架构级别的缓存,静态化和分布式:(数据库-->渲染页 ...

  5. java面试考点-HashTable/HashMap/ConcurrentHashMap

    HashTable 内部数据结构是数组+链表,键值对不允许为null,线程安全,但是锁是整表锁,性能较差/效率低 HashMap 结构同HashTable,键值对允许为null,线程不安全, 默认初始 ...

  6. 集群架构01.Nginx初步安装配置

    1.切换163yum 源,环境介绍 [root@moban ~]# cat /etc/redhat-release CentOS release 6.5 (Final) mv CentOS-Base. ...

  7. vue项目中兼容ie8以上浏览器的配置

    1.首先需要在根目录的index.html文件加入如下代码 <meta http-equiv="X-UA-Compatible" content="IE=edge& ...

  8. 除了 UCAN 发布的鹿班和普惠体,这些设计工具也来自阿里

    在 4 月 27 日的 UCAN 2019 设计大会上,阿里巴巴对外发布了一款全新免费字体——阿里巴巴普惠体.其实,作为经济体的阿里巴巴,这些年早已默默推出了很多实用的设计工具,比如大名鼎鼎的 Ico ...

  9. 【VS开发】MP4与H.264

    一.MP4格式基本概念 MP4格式对应标准MPEG-4标准(ISO/IEC14496) 二.MP4封装格式核心概念 1  MP4封装格式对应标准为 ISO/IEC 14496-12(信息技术 视听对象 ...

  10. eNSP——通过Telent登录系统

    我们先介绍一下Telent是干啥的: Telnet通常用在远程登录应用中,以便对本地或远端运行的网络设备进行配置.监控和维护.如网络中有多台设备需要配置和管理,用户无需为每一台 设备都连接一一个用户终 ...