`
Aina_hk55HK
  • 浏览: 388202 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

Android SQLiteOpenHelper的使用

阅读更多
package com.Aina.Android;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.database.sqlite.SQLiteDatabase.CursorFactory;

/**
 * com.Aina.Android Pro_SQLiteDatabase
 * 
 * @author Aina.huang E-mail: 674023920@qq.com
 * @version 创建时间:2010 Jun 29, 2010 9:57:21 AM 类说明
 */
public class DatabaseHelper extends SQLiteOpenHelper {

	private Context mContext = null;
	private String str = "";
	private String table = "";

	public DatabaseHelper(Context context, String name, CursorFactory factory,
			int version, String str, String table) {
		super(context, name, factory, version);
		this.mContext = context;
		this.str = str;
		this.table = table;
	}

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

	@Override
	public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
		db.execSQL("DROP TABLE "+table);
		this.onCreate(db);

	}
}



package com.Aina.Android;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;

/**
 * com.Aina.Android Pro_SQLiteDatabase
 * 
 * @author Aina.huang E-mail: 674023920@qq.com
 * @version 创建时间:2010 Jun 29, 2010 10:11:57 AM 类说明
 */
public class MyDataBaseAdapter {

	private Context mContext = null;
	private SQLiteDatabase mSQLiteDatabase = null;
	private DatabaseHelper dh = null;
	private static final String DB_NAME = "Text.db";
	private static final int DB_VERSION = 1;
	private static final String TABLE_NAME = "table1";
	private static final String COLUMN_ID = "_id";
	public static final String COLUMN_NAME = "name";
	public static final String COLUMN_DATA = "data";
	private static final String CREATE_TABLE = "CREATE TABLE " + TABLE_NAME
			+ " (" + COLUMN_ID + " INTEGER PRIMARY KEY," + COLUMN_NAME
			+ " TEXT," + COLUMN_DATA + " INTEGER NOT NULL)";
	public MyDataBaseAdapter(Context context){
		mContext = context;
	}
	/**
	 * 打开数据库
	 */
	public void open(){
		dh = new DatabaseHelper(mContext,DB_NAME,null,DB_VERSION,CREATE_TABLE,TABLE_NAME);
		mSQLiteDatabase = dh.getWritableDatabase();
	}
	/**
	 * 关闭数据库
	 */
	public void close(){
		dh.close();
	}
	/**
	 * 插入
	 */
	public void insert(){
		try{
			ContentValues cv = new ContentValues();
			cv.put(COLUMN_NAME, "张三");
			cv.put(COLUMN_DATA, 10);
			mSQLiteDatabase.insert(TABLE_NAME, null, cv);
		}catch(Exception ex){
			ex.printStackTrace();
		}
	}
	/**
	 * 修改
	 */
	public void update(){
		try{
			String sql = "UPDATE "+TABLE_NAME+" SET "+COLUMN_NAME+" ='李四' WHERE  _id=1";
			mSQLiteDatabase.execSQL(sql);
		}catch(Exception ex){
			ex.printStackTrace();
		}
	}
	/**
	 * 修改
	 */
	public void delete(){
		try{
			mSQLiteDatabase.delete(TABLE_NAME, "_id=2", null);
		}catch(Exception ex){
			ex.printStackTrace();
		}
	}
	/**
	 * 查询
	 */
	public Cursor select(){
		Cursor cursor = null;
		try{
			String sql = "SELECT * FROM "+TABLE_NAME;
			cursor = mSQLiteDatabase.rawQuery(sql, null);
			return cursor;
		}catch(Exception ex){
			ex.printStackTrace();
			return null;
		}
	}
}



package com.Aina.Android;

import android.app.Activity;
import android.database.Cursor;
import android.graphics.Color;
import android.os.Bundle;
import android.view.KeyEvent;
import android.widget.LinearLayout;
import android.widget.ListAdapter;
import android.widget.SimpleCursorAdapter;
import android.widget.LinearLayout.LayoutParams;
import android.widget.ListView;

public class Test extends Activity {
	/** Called when the activity is first created. */
	private MyDataBaseAdapter mdba = null;
	private LinearLayout ll = null;
	private ListView lv = null;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);		
		ll = new LinearLayout(this);
		ll.setOrientation(LinearLayout.VERTICAL);
		ll.setBackgroundColor(Color.BLACK);
		ll.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,
				LayoutParams.WRAP_CONTENT));
		lv = new ListView(this);
		lv.setBackgroundColor(Color.BLACK);
		ll.addView(lv, new LayoutParams(LayoutParams.FILL_PARENT,
				LayoutParams.WRAP_CONTENT));
		setContentView(ll);
		mdba = new MyDataBaseAdapter(this);
		mdba.open();
		this.show();
	}

	@Override
	protected void onPause() {
		super.onPause();
		mdba.close();
	}

	@Override
	public boolean onKeyDown(int keyCode, KeyEvent event) {
		switch (keyCode) {
		case KeyEvent.KEYCODE_DPAD_LEFT:
			mdba.insert();
			break;
		case KeyEvent.KEYCODE_DPAD_RIGHT:
			mdba.delete();
			break;
		case KeyEvent.KEYCODE_DPAD_UP:
			mdba.update();
			break;
		}
		this.show();
		return super.onKeyDown(keyCode, event);
	}

	private void show() {
		Cursor cursor = mdba.select();
		if (cursor != null) {
			ListAdapter adapter = new SimpleCursorAdapter(this,
					android.R.layout.simple_list_item_2, cursor, new String[] {
							MyDataBaseAdapter.COLUMN_NAME,
							MyDataBaseAdapter.COLUMN_DATA }, new int[] {
							android.R.id.text1, android.R.id.text2 });
			lv.setAdapter(adapter);
		}
	}
}
分享到:
评论
2 楼 ylzyd12345 2011-12-03  
mark 一下。
1 楼 fujingrun 2011-02-24  
   包名也有大写   

相关推荐

    android SQLiteOpenHelper使用示例

    在Android开发中,SQLite是一个非常重要的数据存储工具,SQLiteOpenHelper是Android SDK提供的一种管理SQLite数据库的辅助类。本文将深入探讨SQLiteOpenHelper的使用方法及其在实际应用中的关键知识点。 首先,...

    Android SqliteOpenHelper数据库的基本使用

    本篇主要介绍如何使用Android内置的`SQLiteOpenHelper`类来操作SQLite数据库,包括创建数据库、升级数据库、执行增删改查(CRUD)操作等核心知识点。 ### 1. 数据库初始化与创建 `SQLiteOpenHelper`是Android提供...

    android SQLiteOpenHelper 数据库简单应用

    本篇文章将深入探讨如何在Android中使用SQLiteOpenHelper进行数据库的简单应用。 首先,SQLiteOpenHelper有两个关键方法:`onCreate()` 和 `onUpgrade()`。`onCreate()` 方法在数据库首次创建时被调用,用于执行...

    基于Android SQLiteOpenHelper && CRUD 的使用

    SQLiteOpenHelper是Android提供的一个用于管理SQLite数据库的类,它简化了数据库的创建、升级以及CRUD(Create, Read, Update, Delete)操作。以下是基于Android SQLiteOpenHelper和CRUD操作的详细介绍: 1. **...

    SQLiteOpenHelper类的onUpgrade方法的作用

    在深入探讨`SQLiteOpenHelper`类中的`onUpgrade`方法之前,我们先来了解下`SQLiteOpenHelper`类在Android开发中的重要性。`SQLiteOpenHelper`是Android SDK提供的一个辅助类,用于帮助开发者创建和管理应用程序中的...

    android 中 SQLiteOpenHelper的封装使用详解

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

    Android 数据库 SQlite 范例 SQLiteOpenHelper

    这篇教程将深入探讨如何使用SQLiteOpenHelper进行数据库操作,并结合ListView展示数据,同时也会讲解Menu键的使用。 首先,让我们了解SQLiteOpenHelper的主要方法。`onCreate()`方法会在数据库首次创建时被调用,...

    android studio使用SQLiteOpenHelper()建立数据库的方法

    今天我们讲讲在android studio中利用数据库存储中的SQLiteOpenHelper()方法建立数据库 SQLiteOpenH elper中需要重载函数: onCreate( ):利用SQL语句,在系统中创建数据库(表)功能 onUpgrade( ):利用SQL语句,...

    Android开发之Sqliteopenhelper用法实例分析

    SQLiteOpenHelper是Android提供的一个辅助类,它简化了数据库的创建和升级过程,使得开发者能够更加专注于数据操作而不是数据库管理。下面我们将深入探讨SQLiteOpenHelper的用法及其在Android开发中的重要性。 首先...

    基于Android SQLiteOpenHelper CRUD 的使用

    SQLiteOpenHelper是Android SDK提供的一种方便管理SQLite数据库的类,它主要用于数据库的创建、升级以及版本管理。下面我们将详细讲解如何基于SQLiteOpenHelper进行CRUD(Create、Read、Update、Delete)操作。 ...

    android app 示例 SQLiteOpenHelper 实现数据操作

    SQLiteOpenHelper是Android SDK提供的一种工具类,它帮助开发者轻松管理SQLite数据库,包括创建、升级和打开数据库。在这个示例中,我们将深入探讨如何使用SQLiteOpenHelper进行数据操作。 SQLiteOpenHelper主要有...

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

    最近学习安卓遇到了对数据库的操作,用到了SQLiteOpenHelper这个类来连接或者创建数据库,通过getWritableDatabase()或者...使用SQLiteOpenHelper,便是构建一个类将其继承,有三个方法必须实现: 2.1 构造方法

    SqliteOpenHelper

    总结起来,这个项目是一个简单的Android应用,使用`SqliteOpenHelper`来管理SQLite数据库。`MainActivity`负责与用户交互,而`MyDbHelper`处理所有与数据库相关的任务。通过学习这个项目,开发者可以了解如何在...

    android 项目利用SQLiteOpenHelper创建数据库文件Demo

    在这个“android项目利用SQLiteOpenHelper创建数据库文件Demo”中,我们将深入探讨如何在Android应用中有效地使用SQLiteOpenHelper。 首先,我们需要了解SQLiteOpenHelper的基本结构。一个典型的SQLiteOpenHelper...

    SQLiteOpenHelper

    通过学习和理解这个例子,你应该能够熟练地在Android应用中使用SQLiteOpenHelper进行数据库操作。确保正确处理数据库的版本管理,以适应应用程序的迭代更新,同时也要注意线程安全问题,尤其是在多线程环境中操作...

    Pro-Android-3 BookProvider SQLiteOpenHelper

    《Pro-Android-3 BookProvider SQLiteOpenHelper》是关于Android应用开发的一本专业书籍,主要探讨了如何在Android系统中利用`BookProvider`和`SQLiteOpenHelper`进行数据存储和管理。`BookProvider`是自定义的内容...

    在android studio中用SQLiteOpenHelper()方法建立数据库

    今天我们讲讲在android studio中利用数据库存储中的SQLiteOpenHelper()方法建立数据库 SQLiteOpenHelper中需要重载函数: onCreate( ):利用SQL语句,在系统中创建数据库(表)功能 onUpgrade( ):利用SQL语句,在...

    android 手机数据库 实现SQLiteOpenHelper

    SQLiteOpenHelper是Android SDK提供的一种管理SQLite数据库的工具类,它可以帮助开发者轻松地创建、升级和打开数据库。本篇文章将深入探讨如何在Android应用中实现SQLiteOpenHelper。 首先,我们了解...

    SQLiteOpenHelper和ContentProvider区别

    SQLiteOpenHelper和ContentProvider是Android开发中的两个重要组件,它们都与数据存储和访问有关,但各自扮演的角色和使用场景有所不同。 SQLiteOpenHelper是Android系统提供的一个用于管理SQLite数据库的辅助类。...

Global site tag (gtag.js) - Google Analytics