android怎么连接sqlite数据库?

SQLite数据库首先先建立SQLiteOpenHelper()的子类实现SQLiteOpenHelper中的OnCreate()方法和构造方法。 this class takes care of opening the database if it exists, creating it if it does not, and upgrading it as necessary.

SQLiteOpenHelper()主要是提供数据库的对象,其中的getWriteableDatabase

public class PersonSQLiteOpenHelper extends SQLiteOpenHelper{public PersonSQLiteOpenHelper(Context context){super(context, "person.db", null, 1);}

/** * 第一次被创建的时候调用的方法 */@Overridepublic void onCreate(SQLiteDatabase db){db.execSQL("create table person(id primary key autoincrement,name varchar(20),number varchar(20)");}

@Overridepublic void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2){

}

}

有了SQLiteOpenHelper的子类后,就可建立其引用hrelper,用引用获得数据库db=helper.getWritableDataBase();Db.execSQL(“select * from table”);建立与数据库操作相关的类(选择)public class PersonDao{private PersonSQLiteOpenHelper helper;

public PersonDao(Context context){helper = new PersonSQLiteOpenHelper(context);}/** *   * @param name * @param number */public void add(String name, String number){SQLiteDatabase db = helper.getWritableDatabase();db.execSQL("insert into person(name,number) values(?,?)", new Object[] {name, number });db.close();}

/** *  * @param name * @return */public boolean find(String name){SQLiteDatabase db = helper.getReadableDatabase();Cursor cursor = db.rawQuery("select *from person where name=?",new String[] { name });boolean result = cursor.moveToNext();cursor.close();db.close();return result;}

/** *  * @param name * @param number */public void update(String name, String number){SQLiteDatabase db = helper.getWritableDatabase();db.execSQL("update person set number=? where name=?", new Object[] {number, name });db.close();}

/** *  * @param name */public void delete(String name){SQLiteDatabase db = helper.getWritableDatabase();db.execSQL("delete from person where name=?", new Object[] { name });db.close();}/** *  * @return */public List<Person> findAll(){SQLiteDatabase db = helper.getReadableDatabase();Cursor cursor = db.rawQuery("select *from person", null);ArrayList<Person> list = new ArrayList<Person>();while (cursor.moveToNext()){int id = cursor.getInt(cursor.getColumnIndex("id"));String name = cursor.getString(cursor.getColumnIndex("name"));String number = cursor.getString(cursor.getColumnIndex("number"));Person person = new Person(id, name, number);list.add(person);}return list;}}

事物//开启事物db.beginTransaction();try{//标记事物执行成功db.setTransactionSuccessful();} finally{db.endTransaction();}
时间: 2024-10-07 06:13:47

android怎么连接sqlite数据库?的相关文章

Android开发之SQLite数据库详解

Android开发之SQLite数据库详解 请尊重他人的劳动成果,转载请注明出处:Android开发之SQLite数据库详解 http://blog.csdn.net/fengyuzhengfan/article/details/40194393 Android系统集成了一个轻量级的数据库:SQLite, SQLite并不想成为像Oracle.MySQL那样的专业数据库.SQLite只是一个嵌入式的数据库引擎,专门适用于资源有限的设备上(如手机.PDA等)适量数据存取. 虽然SQLite支持绝大

跟我学Android之十三 SQLite数据库操作

本章内容 第1节  SQLite数据库概述 第2节  SQLite建库建表 第3节 管理数据库连接 第4节  操作数据库数据 第5节  数据绑定 本章目标 掌握SQLite数据的基本特点与工具使用. 熟练掌握SQLite建库建表的方法. 熟练掌握连接SQLite数据库的方法. 熟悉SQLite数据库的升级与建立方法. 掌握通过数据绑定完成数据显示的方法. SQLite数据库简介 SQLite是一种非常流行的嵌入式数据库,是由C语言编写而成,是一款轻型关系型数据库,支持SQL,支持多种操作系统,完

Android总结三SQLite数据库

一.SQLite数据库 1.SQLite数据库的特点 安卓手机自带, 小巧, 适合在手机中使用 不区分数据类型(主键除外) SQL语句和MySQL几乎相同 SQLite不使用JDBC连接, 使用的是Android自有的API 每个数据库对应一个文件 2.创建数据库 定义类继承SQLiteOpenHelper, 实现onCreate(), onUpgrade() 创建该类对象, 调用getWritableDatabse()或者getReadableDatabse() 情况1: 数据库文件不存在,

VS2010连接SQLite数据库

Visual studio 2010及以上版本,连接SQLite数据库 1.在Sqlite开发站点下载SQLite的.exe安装包 Ctrl+F搜索这条语句:This is the only setup package that is capable of installing the design-time components for Visual Studio xxxx 找到对应的VS版本,注意一定要带bundle,集成了设计器:无论32位系统还是64位系统,似乎都要下载32位的(X86)

Android中使用Sqlite数据库 (一) 建表

一.实现一个类,继承SQLiteOpenHelper类,并实现构造函数,onCreate()  onUpgrade() import android.content.Context; import android.database.DatabaseErrorHandler; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase.CursorFactory; impo

Android中使用Sqlite数据库 (二) 增删改查

定义接口 package com.example.android_db.service; import java.util.List; import java.util.Map; public interface PersonService { public boolean addPerson(Object[] params); public boolean deletePerson(Object[] params); public boolean updatePerson(Object[] p

Java连接SQLite数据库详解【转】

1 package com.hedalixin; 2 import java.sql.Connection; 3 import java.sql.DriverManager; 4 import java.sql.ResultSet; 5 import java.sql.Statement; 6 7 /** 8 * @author Chrome 9 * 10 */ 11 public class JavaSqlite { 12 13 /** 14 * @param args 15 */ 16 pu

Android下利用SQLite数据库实现增删改查

1: 首先介绍如何利用adb查看数据库 1: adb shell 2: cd /data/data/包名/databases 3:  sqlite3 数据库 4   接下来就可以进行数据库的sql语法的使用了 bean对象: public class Person { private int id; private String name; private String number; } 数据库的创建以及表的创建: package com.example.db; import android.

vc连接sqlite数据库

mnesia在频繁操作数据的过程可能会报错:** WARNING ** Mnesia is overloaded: {dump_log, write_threshold},可以看出,mnesia应该是过载了.这个警告在mnesia dump操作会发生这个问题,表类型为disc_only_copies .disc_copies都可能会发生. 如何重现这个问题,例子的场景是多个进程同时在不断地mnesia:dirty_write/2 mnesia过载分析 1.抛出警告是在mnesia 增加dump