SQLiteOpenHelper主要用于 创建数据库

SQLiteDatabase 主要用于 执行sql语句

  1. 程序内使用SQLite数据库是通过SQLiteOpenHelper进行操作
  2. 1.       自己写个类继承SQLiteOpenHelper,重写以下3个方法
  3. public void onCreate(SQLiteDatabase db)
  4. {//创建数据库时的操作,如建表}
  5. public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)
  6. {
  7. //版本更新的操作
  8. }
  9. 2.    通过SQLiteOpenHelper的getWritableDatabase()获得一个SQLiteDatabase数据库,以后的操作都是对SQLiteDatabase进行操作。
  10. 3.       对得到的SQLiteDatabase对象进行增,改,删,查等操作。
  11. 代码
  12. package cx.myNote;
  13. import android.content.ContentValues;
  14. import android.content.Context;
  15. import android.content.Intent;
  16. import android.database.Cursor;
  17. import android.database.sqlite.SQLiteDatabase;
  18. import android.database.sqlite.SQLiteOpenHelper;
  19. //DBOptions for login
  20. public class DBOptions {
  21. private static final String DB_NAME = "notes.db";
  22. private static final String DB_CREATE="create table logininf(name text,pwd text)";
  23. public class DBHelper extends SQLiteOpenHelper
  24. {
  25. public DBHelper(Context context) {
  26. super(context,DB_NAME, null, 1);
  27. }
  28. @Override
  29. public void onCreate(SQLiteDatabase db) {
  30. // TODO Auto-generated method stub
  31. //建表
  32. db.execSQL(DB_CREATE);
  33. }
  34. @Override
  35. public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
  36. // TODO Auto-generated method stub
  37. db.execSQL("drop table if exists logininf");
  38. onCreate(db);
  39. }
  40. }
  41. private Context context;
  42. private SQLiteDatabase db;
  43. private DBHelper dbHelper;
  44. public  DBOptions(Context context)
  45. {
  46. this.context = context;
  47. dbHelper = new DBHelper(context);
  48. db=dbHelper.getReadableDatabase();
  49. }
  50. //自己写的方法,对数据库进行操作
  51. public String getName()
  52. {
  53. Cursor cursor = db.rawQuery("select name from logininf", null);
  54. cursor.moveToFirst();
  55. return cursor.getString(0);
  56. }
  57. public int changePWD(String oldP,String pwd)
  58. {
  59. ContentValues values = new ContentValues();
  60. values.put("pwd", pwd);
  61. return db.update("logininf", values,"pwd="+oldP, null);
  62. }
  63. }

insert方法插入的一行记录使用ContentValus存放,ContentValues类似于Map,它提供了put(String key, Xxx value)(其中key为数据列的列名)方法用于存入数据、getAsXxxx(String key)方法用于取出数据。

转载自 http://blog.csdn.net/wangqilin8888/article/details/7780228

SQLite使用方法 SQLiteOpenHelper操作(转)的更多相关文章

  1. ThinkPHP—URL的访问以及各种方法的操作

    1.URL访问 ThinkPHP采用单一入口模式访问应用,对应用的所有请求都定向到应用的入口文件,系统会从URL参数中解析当前请求的模块.控制器和操作,下面是一个标准的URL访问格式: 第一种访问方式 ...

  2. [python爬虫] Selenium常见元素定位方法和操作的学习介绍(转载)

    转载地址:[python爬虫] Selenium常见元素定位方法和操作的学习介绍 一. 定位元素方法 官网地址:http://selenium-python.readthedocs.org/locat ...

  3. time strptime()方法 时间操作

    Python time strptime()方法 时间操作   描述 Python time strptime() 函数根据指定的格式把一个时间字符串解析为时间元组. 语法 strptime()方法语 ...

  4. 【JavaWeb】【JSP】【Bean】JavaBean基础使用方法与操作步骤

    JavaBean基础使用方法与操作步骤 JavaWeb jsp Bean 项目结构 JavaBean的概念 JavaBean是可复用的.平台独立的软件组件 JavaBean既可以是简单的GUI要素,如 ...

  5. Android下的SQLite数据库的相关操作及AndroidTestCase测试

    一:创建数据库 package com.itcode.mysqlite; import android.content.Context; import android.database.sqlite. ...

  6. Android几种打开SQLite的方法

    第一种:用SQLiteOpenHelper辅助类 SQLiteOpenHelper类可以用来创建或打开数据库,两个关键的方法:onCreate(SQLiteDatabase db)和onUpgrade ...

  7. C#连接SQLite数据库方法

    --结合Enterprise Library连接,操作SQLite 企业库是我们常用的框架之一,可以从http://entlib.codeplex.com/下载Enterprise Library 5 ...

  8. 在Android Studio中查看Sqlite的方法

    只说最好的方法,使用工具stetho:http://facebook.github.io/stetho/ 1.在Gragle中加上如下语句: dependencies { // Stetho core ...

  9. 安卓基础之Sqlite数据库最最基础操作

    Sqlite数据库基础操作 摘要:在应用中新建一个数据库,并创建一个数据表写入数据,然后读取表中数据并展示. 主要逻辑: 1.通过继承SQLiteOpenHelper自定义类,定制数据库的表结构,初始 ...

随机推荐

  1. mysql union 详解

    Union:作用:把2次或多次查询结果合并起来要求:两次查询的列数一致推荐:查询的每一列,相对应的列类型也一样 可以来自于多张表 多次sql语句取出的列名可以不一致,此时,以第1个sql的列名为准 例 ...

  2. Javascript动态调整文章的行距、字体、颜色,及打印页面和关闭窗口功能

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. derby支持的数据类型

    Data types This section describes the data types used in Derby. Built-In type overview Numeric types ...

  4. l来自wentao:项目加入缓存(redis),实时调试时用 -----可视化缓存,flushdb

    下文来自segmentfault,网站:一个交流网站:https://segmentfault.com/ 在做一个项目时如果加入缓存(例如redis),我如何进行实时调试呢? 缓存 高并发 架构 gz ...

  5. git常见问题解决办法

    1,git status乱码 git config --global core.quotepath false 执行完后再使用时,就显示正常了

  6. 淘宝(阿里百川)手机客户端开发日记第二篇 android首页之顶部轮播特效制作 (二)

    1.我们来设计flash_slide.xml 布局,这个xml主要做成模块化,方便其它的activity可以动态去调用. flash_slide.xml内容如下: <?xml version=& ...

  7. Tooltip jqueryui

    (文章是从我的个人主页上粘贴过来的,大家也可以访问我的主页 www.iwangzheng.com) http://jqueryui.com/tooltip/ <meta charset=&quo ...

  8. 彻底理解数字图像处理中的卷积-以Sobel算子为例

    彻底理解数字图像处理中的卷积-以Sobel算子为例 作者:FreeBlues 修订记录 2016.08.04 初稿完成 概述 卷积在信号处理领域有极其广泛的应用, 也有严格的物理和数学定义. 本文只讨 ...

  9. ZeroMQ(java)中的数据流SessionBase与SocketBase

    前面的文章中已经比较的清楚了ZeroMQ(java)中如何在底层处理IO, 通过StreamEngine对象来维护SelectableChannel对象以及IO的事件回调,然后通过Poller对象来维 ...

  10. CC MayClg 15 T3

    www.codechef.com/MAY15/problems/CHAPD 一道比较神奇的题目... 看到题目后自己yy出了个傻逼算法...然后对拍都是对的...提交都是错的...然后一看" ...