SQLite使用方法 SQLiteOpenHelper操作(转)
SQLiteOpenHelper主要用于 创建数据库
SQLiteDatabase 主要用于 执行sql语句
- 程序内使用SQLite数据库是通过SQLiteOpenHelper进行操作
- 1. 自己写个类继承SQLiteOpenHelper,重写以下3个方法
- public void onCreate(SQLiteDatabase db)
- {//创建数据库时的操作,如建表}
- public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)
- {
- //版本更新的操作
- }
- 2. 通过SQLiteOpenHelper的getWritableDatabase()获得一个SQLiteDatabase数据库,以后的操作都是对SQLiteDatabase进行操作。
- 3. 对得到的SQLiteDatabase对象进行增,改,删,查等操作。
- 代码
- package cx.myNote;
- import android.content.ContentValues;
- import android.content.Context;
- import android.content.Intent;
- import android.database.Cursor;
- import android.database.sqlite.SQLiteDatabase;
- import android.database.sqlite.SQLiteOpenHelper;
- //DBOptions for login
- public class DBOptions {
- private static final String DB_NAME = "notes.db";
- private static final String DB_CREATE="create table logininf(name text,pwd text)";
- public class DBHelper extends SQLiteOpenHelper
- {
- public DBHelper(Context context) {
- super(context,DB_NAME, null, 1);
- }
- @Override
- public void onCreate(SQLiteDatabase db) {
- // TODO Auto-generated method stub
- //建表
- db.execSQL(DB_CREATE);
- }
- @Override
- public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
- // TODO Auto-generated method stub
- db.execSQL("drop table if exists logininf");
- onCreate(db);
- }
- }
- private Context context;
- private SQLiteDatabase db;
- private DBHelper dbHelper;
- public DBOptions(Context context)
- {
- this.context = context;
- dbHelper = new DBHelper(context);
- db=dbHelper.getReadableDatabase();
- }
- //自己写的方法,对数据库进行操作
- public String getName()
- {
- Cursor cursor = db.rawQuery("select name from logininf", null);
- cursor.moveToFirst();
- return cursor.getString(0);
- }
- public int changePWD(String oldP,String pwd)
- {
- ContentValues values = new ContentValues();
- values.put("pwd", pwd);
- return db.update("logininf", values,"pwd="+oldP, null);
- }
- }
insert方法插入的一行记录使用ContentValus存放,ContentValues类似于Map,它提供了put(String key, Xxx value)(其中key为数据列的列名)方法用于存入数据、getAsXxxx(String key)方法用于取出数据。
转载自 http://blog.csdn.net/wangqilin8888/article/details/7780228
SQLite使用方法 SQLiteOpenHelper操作(转)的更多相关文章
- ThinkPHP—URL的访问以及各种方法的操作
1.URL访问 ThinkPHP采用单一入口模式访问应用,对应用的所有请求都定向到应用的入口文件,系统会从URL参数中解析当前请求的模块.控制器和操作,下面是一个标准的URL访问格式: 第一种访问方式 ...
- [python爬虫] Selenium常见元素定位方法和操作的学习介绍(转载)
转载地址:[python爬虫] Selenium常见元素定位方法和操作的学习介绍 一. 定位元素方法 官网地址:http://selenium-python.readthedocs.org/locat ...
- time strptime()方法 时间操作
Python time strptime()方法 时间操作 描述 Python time strptime() 函数根据指定的格式把一个时间字符串解析为时间元组. 语法 strptime()方法语 ...
- 【JavaWeb】【JSP】【Bean】JavaBean基础使用方法与操作步骤
JavaBean基础使用方法与操作步骤 JavaWeb jsp Bean 项目结构 JavaBean的概念 JavaBean是可复用的.平台独立的软件组件 JavaBean既可以是简单的GUI要素,如 ...
- Android下的SQLite数据库的相关操作及AndroidTestCase测试
一:创建数据库 package com.itcode.mysqlite; import android.content.Context; import android.database.sqlite. ...
- Android几种打开SQLite的方法
第一种:用SQLiteOpenHelper辅助类 SQLiteOpenHelper类可以用来创建或打开数据库,两个关键的方法:onCreate(SQLiteDatabase db)和onUpgrade ...
- C#连接SQLite数据库方法
--结合Enterprise Library连接,操作SQLite 企业库是我们常用的框架之一,可以从http://entlib.codeplex.com/下载Enterprise Library 5 ...
- 在Android Studio中查看Sqlite的方法
只说最好的方法,使用工具stetho:http://facebook.github.io/stetho/ 1.在Gragle中加上如下语句: dependencies { // Stetho core ...
- 安卓基础之Sqlite数据库最最基础操作
Sqlite数据库基础操作 摘要:在应用中新建一个数据库,并创建一个数据表写入数据,然后读取表中数据并展示. 主要逻辑: 1.通过继承SQLiteOpenHelper自定义类,定制数据库的表结构,初始 ...
随机推荐
- 陷阱~EF中的Update与Insert共用一个数据上下文
事情是这样的,有一个列表,里面有很多用户信息,可能会有重复的用户,将这个列表的用户插入到数据表中,如果用户已经存在,就更新这个用户的FillTimes 字段,让它加1,使用的底层ORM是entity ...
- Windows下安装配置SubVersion的简明步骤
[使用的安装程序和文档说明] svn-1.4.0-setup.exe:Subversion服务端1.4.0安装程序: SubService.rar: SubServe服务Windows辅助工具; T ...
- ASP.NET MVC学习笔记-----使用自定义的View Engine
我们都知道在ASP.NET MVC中自带了Razor View Engine,Razor十分的强大,可以满足我们绝大部分的需要.但是ASP.NET MVC的高度可扩展性,使我们可以使用自定义的View ...
- 随鼠标移动的div
<html> <head> <style type='text/css'> #d{ border:1px solid green; width:90px; heig ...
- 织梦channelid是什么?dede channel typeid有什么区别
昨儿帮小伙伴整dedecms首页调用栏目文章,当时没注意用到的是channelid参数,修改了好多次赋值,新建了一个新的栏目获取id是156,添加栏目文章,把channelid改为156重新生成首页, ...
- LVS负载均衡集群服务搭建详解(一)
LVS概述 1.LVS:Linux Virtual Server 四层交换(路由):根据请求报文的目标IP和目标PORT将其转发至后端主机集群中的某台服务器(根据调度算法): 不能够实现应用层的负载均 ...
- Linux system V
Sysvinit 的小结 Sysvinit 的优点是概念简单.Service 开发人员只需要编写启动和停止脚本,概念非常清楚:将 service 添加/删除到某个 runlevel 时,只需要执行一些 ...
- Ubuntu上安装gtk2.0不能安装的问题,“下列的软件包有不能满足的依赖关系”
zez@localhoss:~$ sudo apt-get install libgtk2.0-dev正在读取软件包列表... 完成正在分析软件包的依赖关系树 正在读取状态信息... 完成 ...
- FastCgi与PHP-fpm之间是个什么样的关系
刚开始对这个问题我也挺纠结的,看了<HTTP权威指南>后,感觉清晰了不少. 首先,CGI是干嘛的?CGI是为了保证web server传递过来的数据是标准格式的,方便CGI程序的编写者. ...
- 使用pymongo需要手动关闭MongoDB Connection吗?
答:Disconnecting will close all underlying sockets in the connection pool. If this instance is used a ...