`
jk138
  • 浏览: 153951 次
  • 性别: Icon_minigender_1
  • 来自: 茂名
社区版块
存档分类
最新评论

轻量级数据库SQLite

阅读更多

 

MySQLiteHelper.java

 

import android.content.Context;	//引入相关类
import android.database.sqlite.SQLiteDatabase;	//引入相关类
import android.database.sqlite.SQLiteOpenHelper;	//引入相关类
import android.database.sqlite.SQLiteDatabase.CursorFactory;	//引入相关类
//继承自SQLiteOpenHelper的子类
public class MySQLiteHelper extends SQLiteOpenHelper{	
	public MySQLiteHelper(Context context, String name, CursorFactory factory,
			int version) {			
		super(context, name, factory, version);		//调用父类的构造器
	}
	@Override
	public void onCreate(SQLiteDatabase db) {		//重写onCreate方法
		db.execSQL("create table if not exists hero_info("	//调用execSQL方法创建表
				 + "id integer primary key,"
				 + "name varchar,"
				 + "level integer)");
	}
	@Override
	public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
	}	
}

   主Activity

package wyf.wpf;		//声明包语句
import android.app.Activity;	//引入相关类
import android.content.ContentValues;	//引入相关类
import android.database.Cursor;	//引入相关类
import android.database.sqlite.SQLiteDatabase;	//引入相关类
import android.os.Bundle;	//引入相关类	
import android.widget.TextView;	//引入相关类
//继承自Activity的子类
public class Sample_4_3 extends Activity {
	MySQLiteHelper myHelper;	//数据库辅助类对象的引用
	TextView tv;				//TextView对象的引用
	@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);//设置显示的屏幕
        tv = (TextView)findViewById(R.id.tv);		//获得TextView对象的引用
        myHelper = new MySQLiteHelper(this, "my.db", null, 1);	//创建MySQLiteOpenHelper辅助类对象
        insertAndUpdateData(myHelper);	//向数据库中插入和更新数据
        String result = queryData(myHelper);	//向数据库中查询数据
        tv.setText("名字\t等级\n"+result);		//将查询到的数据显示到屏幕上
    }
	//方法:向数据库中的表中插入和更新数据
	public void insertAndUpdateData(MySQLiteHelper myHelper){
		SQLiteDatabase db = myHelper.getWritableDatabase();	//获取数据库对象
		//使用execSQL方法向表中插入数据
		db.execSQL("insert into hero_info(name,level) values('Hero1',1)");
		//使用insert方法向表中插入数据
		ContentValues values = new ContentValues();	//创建ContentValues对象存储“列名-列值”映射
		values.put("name", "hero2");		
		values.put("level", 2);
		db.insert("hero_info", "id", values);		//调用方法插入数据
		//使用update方法更新表中的数据
		values.clear();	//清空ContentValues对象
		values.put("name", "hero2");
		values.put("level", 3);
		db.update("hero_info", values, "level = 2", null);	//更新表中level为2的那行数据		
		db.close();			//关闭SQLiteDatabase对象
	}
	//方法:从数据库中查询数据
	public String queryData(MySQLiteHelper myHelper){
		String result="";
		SQLiteDatabase db = myHelper.getReadableDatabase();		//获得数据库对象
		Cursor cursor = db.query("hero_info", null, null, null, null, null, "id asc");	//查询表中数据
		int nameIndex = cursor.getColumnIndex("name");	//获取name列的索引
		int levelIndex = cursor.getColumnIndex("level");	//获取level列的索引
		for(cursor.moveToFirst();!(cursor.isAfterLast());cursor.moveToNext()){	//遍历查询结果集,将数据提取出来
			result = result + cursor.getString(nameIndex)+"    ";
			result = result + cursor.getInt(levelIndex)+"     \n";
		}
		cursor.close();		//关闭结果集
		db.close();			//关闭数据库对象
		return result;
	}
	@Override
	protected void onDestroy() {
		SQLiteDatabase db = myHelper.getWritableDatabase();	//获取数据库对象
		db.delete("hero_info", "1", null);		//删除hero_info表中的所有数据
		super.onDestroy();
	}
}
分享到:
评论

相关推荐

    轻量级数据库Sqlite的图形化管理客户端-CuteSqlite

    CuteSqlite,是轻量级数据库sqlite的图形化管理客户端,使用C++/WTL实现,支持Windows操作系统。

    轻量级数据库sqlite(c#,java)

    SQLite是一款开源、轻量级的嵌入式关系型数据库,被广泛应用于移动设备、桌面系统以及服务器环境。它不需要单独的服务器进程,而是作为一个库直接集成到应用程序中,因此得名“轻量级”。SQLite支持多种编程语言,...

    轻量级数据库 sqlite3 中文速查手册和分析工具

    作为轻量级数据库,它不需要独立的数据库服务器进程,可以直接在应用进程中运行,节省了资源,提高了效率。SQLite3 的设计目标是提供可靠的数据存储,同时保持易于使用和高效。 SQLite3 的主要特点包括: 1. **小巧...

    C#轻量级数据库SQLite 的使用

    SQLlite为一款轻量级的数据库,此文件里包含了System.Data.SQLite.dll文件,SQliteHelper.cs代码文件,SQLite的使用介绍文件,直接导入dll和cs文件即可,不需要写代码,调用示例在介绍文件内

    Android的轻量级数据库SQLite的使用实践小项目 生管理系统

    在Android开发中,SQLite是一个非常重要的轻量级数据库系统,尤其适用于存储应用程序的结构化数据。SQLite被集成在Android系统中,为开发者提供了一个高效、可靠且易于使用的数据存储解决方案。在这个“学生管理系统...

    sqlite3,轻量级数据库

    sqlite3,轻量级数据库

    Android轻量级sqlite数据库的高级操作

    在Android开发中,SQLite是一个非常重要的组件,它是一个轻量级的、开源的、嵌入式的SQL数据库引擎,被广泛用于存储和管理应用程序中的数据。SQLite数据库的优势在于其小巧、高效且无需单独的服务进程,使得它成为...

    轻型的数据库sqlite工具

    SQLite是一款广泛应用于嵌入式系统和个人计算机上的轻量级数据库引擎,由D. Richard Hipp创建并维护。它的设计目标是实现可移植性、可靠性和高效性,使得它可以在无需管理员或单独服务器进程的情况下运行,非常适合...

    轻量级内存数据库管理工具SQLiteExpert

    SQLiteExpert是一款专为SQLite数据库设计的轻量级内存数据库管理工具,它提供了高效、便捷的方式来创建、管理和维护SQLite数据库。SQLite是一种开源、无服务器、自包含的SQL数据库引擎,广泛应用于移动设备、嵌入式...

    数据库sqlite 小型数据库

    SQLite是一款轻量级的、开源的、自包含的数据库引擎,特别适合于嵌入式应用,无需单独的服务器进程,可以被直接集成到各种应用程序中。它的设计目标是提供一个可移植的、可靠的、高性能的数据库解决方案,尤其适用于...

    Android源码——数据库SQLite.zip

    在Android系统中,SQLite是一个非常重要的组成部分,它是一个轻量级的、开源的、关系型数据库,被广泛用于存储和管理应用程序中的数据。这个压缩包文件"Android源码——数据库SQLite.zip"可能包含了关于Android中...

    Android轻量级的数据库框架

    《Android轻量级数据库框架解析》 在移动应用开发领域,Android系统以其开源、免费的特性,成为了全球最受欢迎的操作系统之一。在Android应用中,数据存储是不可或缺的一部分,而SQLite作为Android内置的关系型...

    轻量内嵌数据库管理工具sqlite-shell-win32-x86

    总的来说,SQLite是一个强大的轻量级数据库解决方案,适用于各种场景,包括作为Subversion等版本控制系统的工作副本数据存储。而“sqlite-shell-win32-x86”则提供了直观的命令行界面,便于数据库管理和维护。对于...

    轻量级数据库,不用写 SQL ,仅仅通过注解就能完成对数据库的操作

    轻量级数据库如SQLite或 Realm,它们提供了面向对象的API和数据模型,使得开发者能够更直观地处理数据。 基于给定的标签“数据库 Android 架构设计 移动架构”,我们可以推断这是一个关于Android平台上数据库管理的...

    SQLite(轻量级最佳数据库) 原理分析和开发应用

    4. **Web应用**: 作为轻量级数据库,可用于简单的Web应用后端。 #### 四、事务管理 SQLite支持事务处理机制,这在保证数据一致性方面非常重要。一个典型的事务周期包括开始、执行和提交/回滚几个阶段。具体来说: ...

    嵌入式数据库SQLite的原理与应用

    5. **SQL支持**:虽然SQLite是一个轻量级数据库,但它支持标准SQL查询语言的大部分语法,使得数据操作更加灵活。 6. **内存数据库模式**:SQLite支持将整个数据库加载到内存中运行,从而极大地提高了数据访问速度。 ...

    数据库SQLite在嵌入式系统中的应用

    ### 数据库SQLite在嵌入式系统中的...综上所述,SQLite作为一种轻量级的嵌入式数据库,在嵌入式系统中展现出强大的优势。无论是从其功能特性还是实际应用的角度来看,SQLite都是嵌入式系统开发者不可或缺的强大工具。

    Android轻量级sqlite orm框架.zip

    在Android应用开发中,SQLite是一个重要的组成部分,它是一个轻量级的、嵌入式的数据库引擎,用于存储应用程序的数据。SQLite ORM(对象关系映射)框架则简化了Android开发者与SQLite数据库之间的交互,使得数据操作...

    ios-轻量级数据库工具.zip

    总的来说,"ios-轻量级数据库工具.zip" 提供的解决方案简化了iOS应用中对SQLite数据库的操作,尤其适合需要缓存数据和离线阅读的场景。通过合理使用TXSqliteSevice,开发者可以更高效地管理数据,提升应用性能和用户...

Global site tag (gtag.js) - Google Analytics