很简单的应用,所以我直接简单明了。

    android中数据库的运用:
   1.定义类继承SQLiteOpenHelper
 
ps:
  public class DBHelper extends SQLiteOpenHelper {
    public DBHelper(Context context) {
    super(context, DBInfo.DB.DB_NAME, null, DBInfo.DB.DB_VERSION);
  }
 @Override
//这个是数据库第一次创建的时候用
 public void onCreate(SQLiteDatabase db) {
  db.execSQL(DBInfo.Table.USER_INFO_CREATE);
 }
 @Override
//这个是数据库升级版本时候调用的方法
 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
  db.execSQL(DBInfo.Table.USER_INFO_DROP);
  onCreate(db);
 }
}
 
 
 
   当你完成了对数据库的操作(例如你的 Activity 已经关闭),需要调用 SQLiteDatabase 的 Close() 方法来释放掉数据库连接。
   下面是对数据库的增删改查(每种方法包括两种方法介绍:优点与缺点):
 
 
/**
  * 添加一条记录到数据库
  *
  * @param id
  * @param name
  */
//第一种方法
 public void add(String id, String name) {
//创建数据库,只有它执行,数据库才可以被创建  另外也可以用.getReadableDatabase();  
  SQLiteDatabase db = dbHelper.getWritableDatabase(); 
  // 不好之处:无返回值,无法判断是否插入成功
  db.execSQL("insert into user_table (userId,userName) values (?,?)",
    new Object[] { id, name });
  db.close();
 }
//第二种方法
 public long addAndroid(String id, String name) {
  SQLiteDatabase db = dbHelper.getWritableDatabase();
  ContentValues values = new ContentValues();
  values.put("userId", id);
  values.put("userName", name);
  // 好处:有返回值  但是当表多的时候查询就会麻烦
  long result = db.insert(Table.USER_INFO_TB_NAME, null, values);// 返回值是插入的是第几行,大于0代表添加成功
  db.close();
  return result;
 }
 
 
 
 /**
  * 查询某条记录是否存在
  *
  * @param name
  * @return
  */
 public boolean find(String name) {
  SQLiteDatabase db = dbHelper.getReadableDatabase();
  Cursor cursor = db.rawQuery(
    "select * from user_table where userName = ?",
    new String[] { name });
  boolean result = cursor.moveToNext();
  db.close();
  return result;
 }
 public boolean findAndroid(String name) {
  SQLiteDatabase db = dbHelper.getReadableDatabase();
  Cursor cursor = db.query(Table.USER_INFO_TB_NAME, null"userName = ?",
    new String[] { name }, nullnullnull);
  boolean result = cursor.moveToNext();// true代表查找到了//有许多的方法,可以看api文档介绍
  db.close();
  return result;
 }
 
 
 /**
  * 修改一条记录
  *
  * @param id
  * @param name
  */
 public void update(String id, String name) {
  SQLiteDatabase db = dbHelper.getWritableDatabase();
  // 缺点无返回值
  db.execSQL("update user_table set userName = ? where userId = ?",
    new Object[] { name, id });
  db.close();
 }
 public int updateAndroid(String id, String name) {
  SQLiteDatabase db = dbHelper.getWritableDatabase();
  ContentValues values = new ContentValues();//是一个map集合,谷歌封装好的 所有有key与value值。
  values.put("userName", name);
  // 返回值大于0代表修改更新成功
  int result = db.update(Table.USER_INFO_TB_NAME, values, "userId = ?",
    new String[] { id });
  db.close();
  return result;
 }
 
 
 /**
  * 删除一条记录
  *
  * @param name
  */
 public void delete(String name) {
  SQLiteDatabase db = dbHelper.getWritableDatabase();
  db.execSQL("delete from user_table where userName = ?",
    new String[] { name });
  db.close();
 }
 public int deleteAndroid(String name) {
  SQLiteDatabase db = dbHelper.getWritableDatabase();
  int result = db.delete(Table.USER_INFO_TB_NAME, "userName = ?",
    new String[] { name });// 返回值为受影响的行数,大于0代表成功
  db.close();
  return result;
 }

Android数据库的运用的更多相关文章

  1. 深入解析Sqlite的完美替代者,android数据库新王者——Realm

    写在前面: 又到一年一度七夕虐狗节,看着大家忍受着各种朋友圈和QQ空间还有现实生活中的轮番轰炸,我实在不忍心再在这里给大家补刀,所以我觉得今天不虐狗,继续给大家分享有用的. 如果你比较关心androi ...

  2. [Android Pro] 完美Android Cursor使用例子(Android数据库操作)

    reference to : http://www.ablanxue.com/prone_10575_1.html 完美 Android Cursor使用例子(Android数据库操作),Androi ...

  3. Android 数据库框架OrmLite的使用(一)

    在这里记录下最基本的用法,官网上可了解相关的介绍. 1.下载OrmLite jar 在下载android的:ormlite-android-4.48.jar和ormlite-core-4.48.jar ...

  4. Android数据库升级

    随着Android应用版本的迭代,经常遇到数据库表结构发生改变,或者一些指定的表数据需要更新.这也就引出一个问题Android数据库的更新问题. Android数据库升级分类 Android数据库更新 ...

  5. 优雅的处理Android数据库升级的问题

    原始完成于:2015-04-27 19:28:22 提供一种思路,优雅的处理Android数据库升级的问题,直接上代码: 1 package com.example.databaseissuetest ...

  6. Android数据库之SQLite数据库

    Android数据库之SQLite数据库 导出查看数据库文件 在android中,为某个应用程序创建的数据库,只有它可以访问,其它应用程序是不能访问的,数据库位于Android设备/data/data ...

  7. Android 数据库读取数据显示 [5]

    2016-12-1 课程内容 昨天学了Android数据库升级.降级.创建 今天把数据库表里面的数据读取出来显示到手机屏幕上 下面代码是MainActivity.java 的代码 package co ...

  8. Android数据库信息显示在listview上

    Key Points: 1.使用SimpleCursorAdapter将Android数据库信息显示在listview上 adapter = new SimpleCursorAdapter(this, ...

  9. android数据库持久化框架

    android数据库持久化框架

  10. Android数据库高手秘籍(一)——SQLite命令

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/38461239 要想熟练地操作不论什么一个数据库.最最主要的要求就是要懂SQL语言, ...

随机推荐

  1. php大力力 [051节] 支付宝支付.申请支付资质,等待审核中

    https://beecloud.cn/doc/payapply/?index=6 支付宝支付申请支付资质 一.注册支付宝用户 在支付宝官网注册成为用户 二.签约对应支付产品 应用集成支付宝支付,需要 ...

  2. 现在遇到一个问题,无法判断url是属于哪一个CDN

    解决的办法是到申请域名的网站上面去调用api获取域名的cname来确定

  3. PHP与Golang如何通信?

    PHP与Golang如何通信? 最近遇到的一个场景:php项目中需要使用一个第三方的功能(结巴分词),而github上面恰好有一个用Golang写好的类库.那么问题就来了,要如何实现不同语言之间的通信 ...

  4. callee的用法

    callee返回正被执行的 Function 对象,也就是所指定的 Function 对象的正文.[function.]arguments.callee可选项 function 参数是当前正在执行的 ...

  5. 读取手机上所有应用程序并显示(APP)

    pd = ProgressDialog.show(getActivity(), "请稍候..", "正在收集软件信息...", true,false); Thr ...

  6. NoSuchMethodError

    http://www.tuicool.com/articles/iIVbuuZ 有些服务器是指定某个目录下的所有jar包,这样如果同时存在不同版本的jar包,也会引起这个问题,算一个检查点

  7. 今天第一次接触到typescript,看了第一个知识点就是变量的声明,来回忆回忆,做做笔记

    以前只用过JavaScript原生写网站特效,今天还是第一次听说typescript的,然后看了一下它的基本知识,感觉很像Java,真的太像了,但是又有不同点.很让我惊奇看到的第一个知识点就和以前不同 ...

  8. 小结MapReduce 程序的流程及设计思路

    简单回顾一下,目前系统是WCF三层C/S插件系统.服务器端是WCF程序寄宿在IIS中,其中我的配置设计是长连接,客户端支持多线程,一个volatile的实例对象.客户端用Winform,其中客户端框架 ...

  9. python pickle 序列化类

    python pickle 序列化类 # coding:utf-8 try: import cPickle as pickle except ImportError: import pickle cl ...

  10. 【jq】c#零基础学习之路(1)Hello World!

    从今天起我会持续发表,这个就是一个日记型的,学习编程是枯燥的,况且我们还是零基础. 学前准备 1.编译环境 vs2010.vs2012.vs2015...(本人用的是vs2010旗舰版).vs2010 ...