`
helpbs
  • 浏览: 1168679 次
文章分类
社区版块
存档分类
最新评论

android SQLiteOpenHelper 对SQLite的操作

 
阅读更多
public class MyDatabaseAdapter {


private static final String DB_NAME = "mzz.db";
private static final String TABLE_NAME = "user";
private static final String T_ID = "_id";
private static final String T_USERNAME = "username";
private static final String T_PASSWORD = "password";

//数据库版本号
private static final int VERSION = 1;

private static final String CREATE_TABLE = "CREATE TABLE "
+ TABLE_NAME
+ " ( "
+ T_ID
+ " INTEGER PRIMARY KEY , "
+ T_USERNAME
+ " TEXT UNIQUE, "
+ T_PASSWORD
+ " TEXT )";

private Context context = null ;
private SQLiteDatabase sqliteDatabase = null ;
private DatabaseHelper databaseHelper = null ;
private static class DatabaseHelper extends SQLiteOpenHelper {

DatabaseHelper(Context context) {
super(context , DB_NAME , null, VERSION);
}


@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
db.execSQL(CREATE_TABLE);
}


@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
db.execSQL("DROP TABLE IF EXISTS notes");
onCreate(db);
}
}

//在创建对象的时候就返回一个sqliteDatabase
public MyDatabaseAdapter(Context context) {
this.context = context;
try {
open();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

//只有通过getWriteableDatabase才得到一个sqliteDatabase
public void open() throws SQLException {
databaseHelper = new DatabaseHelper(context);
sqliteDatabase = databaseHelper.getWritableDatabase();
}

//插入数据,根据ID
public long insertData(String username , String password) {
ContentValues cv = new ContentValues();
cv.put(T_USERNAME, username);
cv.put(T_PASSWORD, password);
return sqliteDatabase.insert(TABLE_NAME, T_ID, cv);
}

/**
* 根据username和password查询数据,只有当两个数据同时存在一条数据时返回true,否则返回false
* @param username
* @param password
* @return
*/
public boolean queryByUnAndPw(String username , String password) {
String sql = "select * from user where username='" + username +"' and password='" + password +"'";
Cursor cur = sqliteDatabase.rawQuery(sql, null);
if(cur != null) {
if(cur.moveToNext()) {
return true;
} else {
return false;
}
} else {
return false;
}
}

//查询表中的所有数据
public Cursor queryAll() {
return sqliteDatabase.query(TABLE_NAME, new String[]{T_ID,T_USERNAME,T_PASSWORD},
null, null, null, null, null);
}
}
分享到:
评论

相关推荐

    Android 数据库 SQlite 范例 SQLiteOpenHelper

    对Android数据库SQlite的基本操作,打开或新建数据库,增,删,改,查。 SQLiteOpenHelper类的运用。 ListView的运用和适配器的使用。 Menu键的使用。

    android之利用SQLite实现登陆和注册

    android之利用SQLite数据库实现登陆和注册,使用SQLiteOpenHelper抽象类建立数据库,建立数据库类DatabaseHelper,写业务类实现查询和插入

    基于SQLiteOpenHelper封装的SQLite操作jar包

    在原有的SQLiteOpenHelper基础上进行的封装,更加方便使用,常用的增删改查方法无需在重新覆写,内文档说明如何使用,只需阅读一次终生受益。

    Android 对sqlite的封装,实现CRUD

    大家好,个人觉得用Sqlite数据库时,经常需要进行机械性的CRUD操作,故对其进行了一下封装,希望能起到抛砖引玉的作用。 目的:封装共有的CRUD 下面简单的说一下使用步骤,如果觉得多余,可以无视。 1. 实现自己...

    Android利用listview控件操作SQLite数据库实例

    Android为了操作SQlite数据库,提供了SQLiteDatabase类,其内封装了insert 、delete、update 、query 、执行SQL命令等操作。同时又为SQLiteDatabase提供了一个辅助类,SQLiteOpenHelper。它提供了两个重要的方法,...

    Android学习之SQLite完整练习

    Android学习时SQLite练习。 定义SQLiteOpenHelper类帮助管理数据库。 继承ContextWrapper并重写,实现自定义创建database路径(SD卡) 实现了SQLite的增删,查询等功能。

    Android 解决sqlite无法创建新表的问题

    使用SQLite时,继承SQLiteOpenHelper, onCreate方法只有在第一次创建数据库的时候才会被调用, 因此,重新更改或者添加表时,需要在DDMS里面删掉原来的.db文件,重新运行,就可以~ 补充知识:Android studio ...

    Android学习之SQLite练习(一)

    练习Android SQLite时的第一个练习,采用SQLiteOpenHelper类来帮助实现。具体sql语句是通过SQLiteDatabase里面封装好的方法!

    基于Android SQLiteOpenHelper && CRUD 的使用

    本篇文章小编为大家介绍,基于Android SQLiteOpenHelper && CRUD的使用。需要的朋友可以参考一下

    Android studio App开发 SQLite数据的使用

    update完整操作实例创建SQLiteOpenHelper类创建数据库调用和操作类与DatabaseButtonActivity 相关联的XML文件运行效果结语 SQLite数据库 简介 SQLite数据库是开源嵌入式数据库,支持的数据库大小为2TB. SQLite

    android连接SQLite数据库源代码

    四、AndroidCRUD业务对SQLite的CRUD操作 1.ContentValues对象的使用 2.android内部insert添加数据的方法,而且values这个不给值也必须要执行,而主键是不是null的其他字段的值是为null 3.insert update query ...

    android上使用Sqlite的一个小demo

    除了SQLiteOpenHelper的子类,该Demo还包含一个数据库操作类,用于对数据库进行增删改查等基本操作。这个类通常包含插入、删除、更新和查询等方法,方便开发者使用。其中查询方法可以返回Cursor对象,开发者可以通过遍历...

    android 中 SQLiteOpenHelper的封装使用详解

    在android中常用存储数据的基本就三种,sqlite,SharedPreferences,文件存储,其中针对于对象存储,使用sqlite比较多,因为可以对其进行增删改查。本文主要讲解SQLiteOpenHelper的封装使用,代码引用自...

    Android的使用SQLite

    使用SQLiteOpenHelper类操作数据库是官方提供的一个官方帮助类

    Android例子源码解决多线程读写sqlite数据库锁定问题

    对于这样的问题,解决的办法就是keep single sqlite connection,保持单个SqliteOpenHelper实例,同时对所有数据库操作的方法添加synchronized关键字。完美解决sqlite的 database locked 或者是 error 5: database ...

    android SQLite开发实例

    这个代码合适初学者使用 使用android 嵌入式sqlite数据库SQLiteOpenHelper进行增删查改的几种写法。包括数据库的事务的使用技巧。很多的注释,合适初学进进行学习使用。

    android SQLite

    android SQLite SQLiteOpenHelper 数据库

    【android】SQLiteOpenHelper实现数据库的增删改查(封装的思想,一个小框架)

    最近学习安卓遇到了对数据库的操作,用到了SQLiteOpenHelper这个类来连接或者创建数据库,通过getWritableDatabase()或者getReadableDatabase(),来对表进行写入或读取操作。 1. 为什么需要SQLiteOpenHelper? ...

    安卓Android sqlite万能数据库

    安卓里常用的存储有方法中少不了数据库的使用,主要是对单表的操作,多表的操作此处不涉及。 每次使用数据库都会有繁琐的代码要写,大致思路是继承自SQLiteOpenHelper写一个数据库操作子类,然后重写onCreate方法,写...

    Androidsqlite.zip

    Android SQLiteOpenHelper 继承实现功能

Global site tag (gtag.js) - Google Analytics