SQLiteHelper .class  (升级的时候,做点小技巧)
  1. package com.keyue.qlm.util; 
  2. import android.content.Context; 
  3. import android.database.sqlite.SQLiteDatabase; 
  4. import android.database.sqlite.SQLiteDatabase.CursorFactory; 
  5. import android.database.sqlite.SQLiteOpenHelper; 
  6. public class SQLiteHelper extends SQLiteOpenHelper { 
  7.   private static final String DATABASE_NAME = "qlm.db";   
  8.      private static final int DATABASE_VERSION = 1;   
  9.   
  10.  public SQLiteHelper(Context context) { 
  11.   super(context, DATABASE_NAME, null, DATABASE_VERSION); 
  12.   // TODO Auto-generated constructor stub 
  13.  } 
  14.  @Override 
  15.  public void onCreate(SQLiteDatabase db) { 
  16.    db.execSQL("CREATE TABLE IF NOT EXISTS user" +   
  17.                  "(_id INTEGER PRIMARY KEY AUTOINCREMENT,userid VARCHAR, username VARCHAR, userimage VARCHAR,userphone VARCHAR,userwd VARCHAR,userjd VARCHAR,useraddress VARCHAR,useremail VARCHAR)");  
  18.  } 
  19.  @Override 
  20.  public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 
  21.           db.execSQL("DROP TABLE IF EXISTS "+DATABASE_NAME);   //这里做点小技巧 
  22.           onCreate(db);    
  23.  } 
  24. }
DBManager .class
  1. package com.keyue.qlm.util; 
  2. import java.util.ArrayList; 
  3. import java.util.List; 
  4. import android.content.Context; 
  5. import android.database.Cursor; 
  6. import android.database.sqlite.SQLiteDatabase; 
  7. public class DBManager { 
  8.   private SQLiteHelper helper;   
  9.      private SQLiteDatabase db;   
  10.         
  11.      public DBManager(Context context) {   
  12.          helper = new SQLiteHelper(context); 
  13.      }   
  14.       
  15.      public void saveorupdate(String sql){ 
  16.       db.beginTransaction(); 
  17.        
  18.       try { 
  19.        db.execSQL(sql); 
  20.        db.setTransactionSuccessful(); 
  21.    }catch (Exception e) { 
  22.     // TODO: handle exception 
  23.    }finally{ 
  24.       db.endTransaction(); 
  25.    } 
  26.     
  27.      } 
  28.       
  29.      public List<Object[]> sel(String sql,Object[] lies){ 
  30.       ArrayList<Object[]> objects = new ArrayList<Object[]>();   
  31.        Cursor c = db.rawQuery(sql, null);   
  32.         while (c.moveToNext()) {   
  33.                Object[] objects2 = new Object[lies.length]; 
  34.                for(int i=0;i<lies.length;i++){ 
  35.                 objects2[i]=c.getString(c.getColumnIndex(lies[i].toString())); 
  36.                } 
  37.                objects.add(objects2); 
  38.            }   
  39.            c.close();   
  40.            return objects;   
  41.      } 
  42.      public void closedb(){ 
  43.       db.close(); 
  44.      } 
  45.      public void opendb(){ 
  46.        db = helper.getWritableDatabase(); 
  47.      } 



android 使用 sqlite的更多相关文章

  1. Android之SQLite数据存储

    一.SQLite保存数据介绍 将数据库保存在数据库对于重复或者结构化数据(比如契约信息)而言是理想之选.SQL数据库的主要原则之一是架构:数据库如何组织正式声明.架构体现于用于创建数据库的SQL语句. ...

  2. android安卓Sqlite数据库实现用户登录注册

    看了很多别人写的安卓SQlite数据的操作代码,一点也不通俗易懂,我觉得我写的不错,而且安卓项目也用上了,所以在博客园里保存分享一下!建立一个类 并继承SQLiteOpenHelper public ...

  3. Android中SQLite数据库小计

    2016-03-16 Android数据库支持 本文节选并翻译<Enterprise Android - Programing Android Database Applications for ...

  4. android 对sqlite数据库的增删改查等各种操作

    转载:http://blog.csdn.net/vrix/article/details/6717090 package com.sqlite.main; import java.io.File; i ...

  5. Android学习---SQLite数据库的增删改查和事务(transaction)调用

    上一篇文章中介绍了手工拼写sql语句进行数据库的CRUD操作,本文将介绍调用sqlite内置的方法实现CRUD操作,其实质也是通过拼写sql语句. 首先,创建一个新的android项目: 其次,查看代 ...

  6. android数据库SQLite的设计模式

    Dao设计模式可能是使用最多的数据库的设计模式其基本思路是将数据库操作的代码 与设计代码分离以便于维护和升级.具体的实现方法是使用包,然后在设计代码中调 用数据库的操作代码,dao设计模式需要创建5个 ...

  7. Android使用SQLite数据库(2)

    打开SQLite数据库,首先要建立一个DatabaseHelper类的实例,然后,再获得数据库: DatabaseHelper mDBH; SQLiteDatabase db; mDBH = new ...

  8. 我的Android六章:Android中SQLite数据库操作

    今天学习的内容是Android中的SQLite数据库操作,在讲解这个内容之前小编在前面有一篇博客也是讲解了SQLite数据库的操作,而那篇博客的讲解是讲述了 如何在Window中通过DOM来操作数据库 ...

  9. Android和SQLite版本对应关系

    Android和SQLite版本对应关系 今天Xamarin群有人问到Android和SQLite版本如何对应,顺手查了一下,贴出来. SQLite 3.8.4.3: • 21-5.0-Lollipo ...

  10. Android中SQLite应用详解

    上次我向大家介绍了SQLite的基本信息和使用过程,相信朋友们对SQLite已经有所了解了,那今天呢,我就和大家分享一下在Android中如何使用SQLite. 现在的主流移动设备像Android.i ...

随机推荐

  1. 〖Linux〗使用gsoap搭建web server(C++)

    1. gsoap的好处就不用说了:百度百科 2. gsoap的下载地址:项目地址,目前我使用的是2.8.15版本 3. 开发环境:Ubuntu13.10 4. 具体操作步骤(以简单相加为例): 1)编 ...

  2. Windows 消息机制浅析

    1.       Windows 的历史 中国人喜欢以史为鉴,而事实也确实是,如果你能知道一件事情的来龙去脉,往往可以更容易地理解事物为什么会表现为当前这样的现状.所以,我的介绍性开场白通常会以一段历 ...

  3. iOS微信支付集成

    概述 iOS微信支付集成 详细 代码下载:http://www.demodashi.com/demo/10735.html 支付宝和微信都是业界的老大哥,相信大家都有所觉得文档.SDK都是各种坑吧(纯 ...

  4. iOS-高仿微信摇一摇动画效果加震动音效

    概述 摇一摇动画效果 (加震动音效) 详细 代码下载:http://www.demodashi.com/demo/10707.html 众所周知, 微信中的摇一摇功能: 搜索人/歌曲/电视,同样在一些 ...

  5. 转:【微信小程序常见问题】下拉框选择器设置picker属性。(包括:城市、日期和时间选择器)

    1.picker写法(支持日期Date.时间Time和城市自定义) wxml文件 <picker bindchange="bindPickerChange" value=&q ...

  6. 在oracle数据库表中没有添加rowid字段为什么会出现?

    rowid 是 oracle 数据库表中的伪列, rowid 首先是一种数据类型,它唯一标识一条记录物理位置, 基于64位编码的18个字符显示.因为 rowid 是伪列, 所以并未真的存储在表中,但可 ...

  7. cout printf 莫明奇妙的崩溃问题

    出现异常主要表现 导致异常的关键代码不是因为printf 或cout,而是因为使用栈空间超出的原因 下图试图在栈上分配1024000个char的空间,确发现崩溃 的位置是printf,这就是这个问题难 ...

  8. HDUOJ1086You can Solve a Geometry Problem too

    You can Solve a Geometry Problem too Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/3 ...

  9. HDUOJ------1711Number Sequence

    Number Sequence Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  10. HDUOJ------敌兵布阵

    敌兵布阵 Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other) Total Submissi ...