1、DBAdapter类:  1 package com.cnzcom.android.quickdial;import android.content.ContentValues;import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;/*** * @author zhangjie** 数据库相关操作的类*/
public class DBAdapter {/*** 数据库名*/private static final String DATABASE_NAME = "quickdial.db";/*** 数据表名*/private static final String DATABASE_TABLE = "quickdial";/*** 数据库版本*/private static final int DATABASE_VERSION = 1;/*** key_id :主键*/@SuppressWarnings("unused")private static final String KEY_ID = "key_id";/*** position :位置信息,表示数据是第几项*/private static final String POSITION = "position";/*** name :姓名*/private static final String NAME = "name";/*** phone_number :电话号码*/private static final String PHONE_NUMBER = "phone_number";/*** ip :是否ip播出*/private static final String IP = "ip";/*** */private static final String DATABASE_CREATE ="create table quickdial (key_id INTEGER PRIMARY KEY, "+ "position INTEGER, " + "name TEXT, " + "phone_number TEXT, "+ "ip INTEGER"+ ");";/*** */private final Context context;/*** */private DatabaseHelper DBHelper;/*** */private SQLiteDatabase db;public DBAdapter(Context ctx) {context = ctx;DBHelper = new DatabaseHelper(context);}private static class DatabaseHelper extends SQLiteOpenHelper {public DatabaseHelper(Context context) {super(context, DATABASE_NAME, null, DATABASE_VERSION);}@Overridepublic void onCreate(SQLiteDatabase db) {// TODO Auto-generated method stub
            db.execSQL(DATABASE_CREATE);}@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {// TODO Auto-generated method stubdb.execSQL("DROP TABLE IF EXISTS " + DATABASE_TABLE);onCreate(db);}}/*** 打开数据库* @return* @throws SQLException*/public SQLiteDatabase open() throws SQLException{db = DBHelper.getWritableDatabase();Cursor cursor = getAll();if(cursor.getCount() == 0) {Log.e("数据库为空", "插入数据");/*** 先使用假数据初始化数据库*/for(int i = 0; i < 10; i++) {insert(i, "", "", 0);}  } else {Log.e("数据库不为空", "读取数据");}cursor.close();return db;}/*** 关闭数据库*/public void close(){DBHelper.close();}/*** 向数据库中插入数据*/public long insert(int position, String name, String phone_number, int ip) {ContentValues initialValues = new ContentValues();initialValues.put(POSITION, position);initialValues.put(NAME, name);initialValues.put(PHONE_NUMBER, phone_number);initialValues.put(IP, ip);return db.insert(DATABASE_TABLE, null, initialValues);}/*** 删除数据,其实不是真正意义上的删除,而是将name = ""、phone_number = ""、ip = 0*/public boolean delete(int position) {ContentValues initialValues = new ContentValues();initialValues.put(POSITION, position);initialValues.put(NAME, "");initialValues.put(PHONE_NUMBER, "");initialValues.put(IP, 0);return db.update(DATABASE_TABLE, initialValues, POSITION + "=" + position, null) > 0;    //        return db.delete(DATABASE_TABLE, POSITION + "=" + position, null) > 0;
    }/*** 更改数据*/public boolean update(int position, String name, String phone_number, int ip) {ContentValues initialValues = new ContentValues();//initialValues.put(POSITION, position);
        initialValues.put(NAME, name);initialValues.put(PHONE_NUMBER, phone_number);initialValues.put(IP, ip);return db.update(DATABASE_TABLE, initialValues, POSITION + "=" + position, null) > 0;        }public Cursor getAll() {Cursor cur = db.query(DATABASE_TABLE, null, null, null, null, null, null);return cur;    }public Cursor get(long rowId) throws SQLException {Cursor cur = db.query(true, DATABASE_TABLE, new String[] {POSITION,NAME,PHONE_NUMBER,IP}, POSITION + "=" + rowId, null, null, null, null, null);if(cur != null) {cur.moveToFirst();}return cur;}}2、Activity中调用:1 public DBAdapter m_DBAdapter;m_DBAdapter = new DBAdapter(this);
m_DBAdapter.open();

文章出处

http://www.cnblogs.com/Jackeyzhang/archive/2011/06/02/2068459.html

转载于:https://www.cnblogs.com/zhangshuli-1989/p/zhangshuli_SQlite_150302183.html

SQlite-数据库的访问实例(转)相关推荐

  1. C#操作数据库、打字程序,GridView访问数据库、程序打包本地sqlite数据库文件

    这里写自定义目录标题 访问数据库的类 程序打包本地sqlite数据库文件 访问数据库的类 class MyMeans //访问数据库的类--类包含了程序使用的数据和方法声明.类一般包含多个方法.方法定 ...

  2. android与mysql数据库同步_android开发 如何通过web服务器访问MYSQL数据库并且使其数据同步到android SQLite数据库?...

    通过web服务器访问MYSQL数据库有以下几个过程: 1.在MySql下创建自己的数据库和自己的表单 2.连接数据库. 3.访问数据库 1.创建web工程 (服务器端) 在Myeclipse下新建一个 ...

  3. C#操作SQLite数据库增、删、改、查 实例

    最近项目上要使用SQLite数据库,不怕大伙笑话毕业四年多了,一直使用Oracle或者MySQL或者SQLServer,但是真的是没有用过SQLite数据库,据说非常轻量级,但是真没有用过,于是网上大 ...

  4. 数据存储与访问之——初见SQLite数据库

    本节引言: 本节我们继续来学习Android数据存储与访问的第三种方式:SQLite数据库,和其他的SQL数据库不同, 我们并不需要在手机上另外安装一个数据库软件,Android系统已经集成了这个数据 ...

  5. C# SQLite数据库 访问封装类

    在客户端配置文件<configuration>节点下,添加: <connectionStrings><add name="localdb" conne ...

  6. sqlite数据库的多线程访问问题

    关于sqlite数据库的多线程访问问题,下面的链接提供了一个详细的说明: http://kagii.com/post/6828016869/android-sqlite-locking

  7. java中删除sqlite数据库语句_sqlite数据库的介绍与java操作sqlite的实例讲解

    sqlite数据库的介绍与java操作sqlite的实例讲解 发布时间:2020-10-03 05:40:34 来源:脚本之家 阅读:92 作者:Lee_Tech sqlite是啥? 1.一种轻型数据 ...

  8. android中访问手机存储空间,android – 访问手机内部存储以推入SQLite数据库文件...

    我正在使用Netbeans和java开发我的android应用程序.当我使用模拟器时,我可以通过访问以下路径,data / data / com.example.helloandroid / data ...

  9. Qt4访问sqlite数据库

    sqlite简介 sqlite 是一款轻量级的.基于文件的嵌入式数据库,2000年就已经诞生,经过7年多的发展,直到今天已经成为最流行的嵌入式数据库,包括google在内的公司 在其桌面软件中亦使用 ...

  10. Qt5 开发 iOS 应用之访问 SQLite 数据库

    开发环境: macOS 10.12.1 Xcode 8.1 Qt 5.8 iPhone 6S+iOS 10.1.1 源代码: 我在 Qt 程序里指定了数据库的名称来创建数据库,在 Win10.Andr ...

最新文章

  1. 快速原型工具 原型可视化
  2. 服务器监控系统的介绍,客户服务系统服务器监控系统
  3. php中表单的非空验证,Javascript的表单与验证-非空验证_javascript技巧
  4. thinkphp中URL传参数的几种方式
  5. 乔恩与加菲猫引发的思考
  6. Azure PowerShell (9) 使用PowerShell导出订阅下所有的Azure VM的Public IP和Private IP
  7. 硬盘坏道隔离工具fbdisk_如何屏蔽硬盘坏道 屏蔽硬盘坏道方法介绍【详解】
  8. Cookie与Session简介
  9. Somer’s D(Somers’ Delta)-顺序变量相关性分析方法
  10. 4. PKI - 数字签名、CA、数字证书
  11. 服务器光纤存储系统,光纤存储服务器 配置
  12. 研究生学习生活日记——第十三次组会
  13. 如何去掉快捷方式上的小箭头
  14. 2 HTML常用标签标签嵌套和并列关系
  15. 好用的高匿代理IP有什么特点?
  16. Windows下部署ubuntu16.04+anaconda2.7+tensorflow
  17. vue项目storage本地存储
  18. ISC2 成功的网络安全领导者必备的9大特质
  19. C语言解析wav文件格式
  20. 刚体6D位姿估计方法综述

热门文章

  1. 数学与编程:“概率论”总结
  2. 从jquery源码中学习一些技巧
  3. 实现小数据量和海量数据的通用分页显示存储过程
  4. sql 查询慢的48个原因分析
  5. 报告软件测试错误的规范
  6. git查找两个分支的共同节点
  7. 连接远程mongodb_在centos6.9安装mongodb
  8. java 定义类变量初始化吗_Java的变量有哪些类型?变量如何定义?如何初始化?请说明理由并举例_学小易找答案...
  9. 注意ajax的同步和异步请求
  10. 学习微信小程序之css14浮动的特性