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);
} /**
* 第一次被创建的时候调用的方法
*/
@Override
public void onCreate(SQLiteDatabase db)
{
db.execSQL("create table person(id primary key autoincrement,name varchar(20),number varchar(20)");
} @Override
public 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();
}
android怎么连接sqlite数据库?的更多相关文章
- Android Studio连接SQLite数据库与SQLite Studio实时同步的实现
最近学习用到了android开发连接数据库这一块,发现连接成功后,都要先访问安卓项目的数据库路径data/data/项目/databases,然后把对应的db文件拷出来,再在SQLite的可视化工具中 ...
- Android版本升级同时Sqlite数据库的升级及之前数据的保留
http://www.cnblogs.com/wang340/archive/2013/05/06/3063135.html http://www.eoeandroid.com/forum.php?m ...
- VS2010连接SQLite数据库
Visual studio 2010及以上版本,连接SQLite数据库 1.在Sqlite开发站点下载SQLite的.exe安装包 Ctrl+F搜索这条语句:This is the only setu ...
- Android实例-操作sqlite数据库之Grid显示图片(XE8+小米2)
结果: 1.数据库文件,记得打包到程序中(assets\internal\). 操作方法: 1.新建firemonkey mobile application①菜单->File->New- ...
- Python3实现连接SQLite数据库的方法
本文实例讲述了Python3实现连接SQLite数据库的方法,对于Python的学习有不错的参考借鉴价值.分享给大家供大家参考之用.具体方法如下: 实例代码如下: ? 1 2 3 4 5 6 7 8 ...
- 一起学微软Power BI系列-使用技巧(6) 连接Sqlite数据库
好久没有研究Power BI了,看到高飞大神弄的东西,太惭愧了.今天有个小东西,数据在Sqlite里面,想倒腾到Power BI Desktop里面折腾一下,结果发现还不直接支持.所以只好硬着头皮上去 ...
- Android存储之SQLite数据库
Android存储之SQLite数据库数据库 创建数据库 package --; import android.content.Context; import android.database.sql ...
- Android 开发中 SQLite 数据库的使用
SQLite 介绍 SQLite 一个非常流行的嵌入式数据库,它支持 SQL 语言,并且只利用很少的内存就有很好的性能.此外它还是开源的,任何人都可以使用它.许多开源项目((Mozilla, PHP, ...
- Android基础总结+SQlite数据库【申明:来源于网络】
Android基础总结+SQlite数据库[申明:来源于网络] 基础总结篇之一:Activity生命周期:http://blog.csdn.net/liuhe688/article/details/6 ...
随机推荐
- 关于 CommonJS AMD CMD UMD 规范的差异总结
一.CommonJS 主要是用于服务器端的规范,比如目前的nodeJS. 根据CommonJS规范,一个单独的文件就是一个模块.每一个模块都是一个单独的作用域,也就是说,在一个文件定义的变量(还包括函 ...
- 【循序渐进学Python】6.Python中的函数
1. 创建函数 一个函数代表一个行为并且返回一个结果(包括None),在Python中使用def关键字来定义一个函数,如下: def hello(name): print 'hello,' + nam ...
- csharp: 百度语音合成
public string API_id = "3333"; //你的ID public string API_record = null; public string API_r ...
- Uxf框架引入Rest控制器特性
引入Rest风格接口的特性,主要是为了适应平台化和移动化开发的需要. 移植自ThinkPHP项目的RestAction. REST(Representational State Transfer表述性 ...
- Unity中启动VS时出现"Visual Studio 2010 Shell 无效的许可证数据"的解决办法
(感觉还是cnblog好一点,刚注册成功赶紧把baidu hi的一篇文章搬过来试试) 一直用着Visual Studio 2013给Unity写代码,安装了SQL Server 2014后,在Unit ...
- MyEclipse+Mysql (一)
MyEclipse连接Mysql数据库 准备工作:MyEclipse使用的是2013版,mysql Ver 14.14 Distrib 5.6.28 1.jar包的下载(jdbc驱动) 我 ...
- [js开源组件开发]js文本框计数组件
js文本框计数组件 先上效果图: 样式可以自行调整 ,它的功能提供文本框的实时计数,并作出对应的操作,比如现在超出了,点击下面的按钮后,文本框会闪动两下,阻止提交.具体例子可以点击demo:http: ...
- SAP_Web_Service开发配置
第一章 SAP创建WS 1.1 概要技术说明 1.2 创建RFC函数 1.3 创建WS 1.4 外部系统访问配置 第二章 SAP调用WS 2 ...
- WEB程序调用客户端程序
最近一个项目中要点击WEB页面上的链接启动自己编写的程序,而且还要接收参数,google了1.5小时,终于初步试验通过了. 尝试google了:web send message windows for ...
- Android项目实战(十二):解决OOM的一种偷懒又有效的办法
在程序的manifest文件的application节点加入android:largeHeap=“true” 即可. 对,只需要一句话! 那么这行代码的意思是什么呢? 简单的说就是使该APP获取最大可 ...