`

android sqlite3查询

阅读更多
package com.eoeAndroid.SQLite;

import android.app.Activity;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class ActivityMain extends Activity {
	OnClickListener listener1 = null;
	OnClickListener listener2 = null;
	OnClickListener listener3 = null;
	OnClickListener listener4 = null;
	OnClickListener listener5 = null;

	Button button1;
	Button button2;
	Button button3;
	Button button4;
	Button button5;

	DatabaseHelper mOpenHelper;

	private static final String DATABASE_NAME = "dbForTest.db";
	private static final int DATABASE_VERSION = 1;
	private static final String TABLE_NAME = "diary";
	private static final String TITLE = "title";
	private static final String BODY = "body";

	private static class DatabaseHelper extends SQLiteOpenHelper {
		DatabaseHelper(Context context) {
			super(context, DATABASE_NAME, null, DATABASE_VERSION);
		}

		@Override
		public void onCreate(SQLiteDatabase db) {

			String sql = "CREATE TABLE " + TABLE_NAME + " (" + TITLE
					+ " text not null, " + BODY + " text not null " + ");";
			Log.i("haiyang:createDB=", sql);
			Log.v("lunzi", sql);
			db.execSQL(sql);

		}

		@Override
		public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
		}
	}

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		prepareListener();
		initLayout();
		mOpenHelper = new DatabaseHelper(this);

	}

	private void initLayout() {
		button1 = (Button) findViewById(R.id.button1);
		button1.setOnClickListener(listener1);

		button2 = (Button) findViewById(R.id.button2);
		button2.setOnClickListener(listener2);

		button3 = (Button) findViewById(R.id.button3);
		button3.setOnClickListener(listener3);
		button4 = (Button) findViewById(R.id.button4);
		button4.setOnClickListener(listener4);

		button5 = (Button) findViewById(R.id.button5);
		button5.setOnClickListener(listener5);

	}

	private void prepareListener() {
		listener1 = new OnClickListener() {
			public void onClick(View v) {
				CreateTable();
			}
		};
		listener2 = new OnClickListener() {
			public void onClick(View v) {
				dropTable();
			}
		};
		listener3 = new OnClickListener() {
			public void onClick(View v) {
				insertItem();
			}
		};
		listener4 = new OnClickListener() {
			public void onClick(View v) {
				deleteItem();
			}
		};
		listener5 = new OnClickListener() {
			public void onClick(View v) {
				showItems();
			}
		};
	}

	/*
	 * 重新建立数据表
	 */
	private void CreateTable() {
		SQLiteDatabase db = mOpenHelper.getWritableDatabase();
		String sql = "CREATE TABLE " + TABLE_NAME + " (" + TITLE
				+ " text not null, " + BODY + " text not null " + ");";
		Log.i("haiyang:createDB=", sql);
		Log.v("lunzi", sql);
		try {
			db.execSQL("DROP TABLE IF EXISTS diary");
			db.execSQL(sql);
			setTitle("数据表成功重建");
		} catch (SQLException e) {
			setTitle("数据表重建错误");
		}
	}

	/*
	 * 删除数据表
	 */
	private void dropTable() {
		SQLiteDatabase db = mOpenHelper.getWritableDatabase();
		String sql = "drop table " + TABLE_NAME;
		Log.v("lunzi", sql);
		try {
			db.execSQL(sql);
			setTitle("数据表成功删除:" + sql);
		} catch (SQLException e) {
			setTitle("数据表删除错误");
		}
	}

	/*
	 * 插入两条数据
	 */
	private void insertItem() {
		SQLiteDatabase db = mOpenHelper.getWritableDatabase();
		String sql1 = "insert into " + TABLE_NAME + " (" + TITLE + ", " + BODY
				+ ") values('haiyang', 'android的发展真是迅速啊');";
		String sql2 = "insert into " + TABLE_NAME + " (" + TITLE + ", " + BODY
				+ ") values('icesky', 'android的发展真是迅速啊');";
		try {
			Log.i("haiyang:sql1=", sql1);
			Log.v("lunzi", sql1);
			Log.i("haiyang:sql2=", sql2);
			Log.v("lunzi", sql2);
			
			db.execSQL(sql1);
			db.execSQL(sql2);
			setTitle("插入两条数据成功");
		} catch (SQLException e) {
			setTitle("插入两条数据失败");
		}
	}

	/*
	 * 删除其中的一条数据
	 */
	private void deleteItem() {
		try {
			SQLiteDatabase db = mOpenHelper.getWritableDatabase();
			db.delete(TABLE_NAME, " title = 'haiyang'", null);
			setTitle("删除title为haiyang的一条记录");
		} catch (SQLException e) {

		}

	}

	/*
	 * 在屏幕的title区域显示当前数据表当中的数据的条数。
	 */
	private void showItems() {

		SQLiteDatabase db = mOpenHelper.getReadableDatabase();
		String col[] = { TITLE, BODY };
		Cursor cur = db.query(TABLE_NAME, col, null, null, null, null, null);
		Integer num = cur.getCount();
		cur.moveToFirst();
		while (!cur.isAfterLast()) {
			Log.v("lunzi", "cols:"+cur.getString(0)+"-"+cur.getString(1));
			System.out.println("cols:"+cur.getString(0)+"-"+cur.getString(1));
			cur.moveToNext();
		}
	    db.close();
		/*for (int i=0;i<num;i++) {
			Log.v("lunzi", cur.getString(i));
		}*/
		setTitle(Integer.toString(num) + " 条记录");
	}
	
}
分享到:
评论

相关推荐

    Android SQLite学习工具

    这篇博客“Android SQLite学习工具”可能详细介绍了如何在Android环境中使用SQLite进行数据操作,并提供了一个实用的SQLite管理工具——sqlite3.exe。 SQLite数据库在Android中的应用主要包括创建数据库、创建表、...

    android sqlite3 5.0

    android5.0以上版本sqlite3, 根据手机sdk来选择sqlite3

    Android SQLite ORM框架

    一个简单的Android SQLite ORM框架不想花资源分的同学可以上我的github主页下载:https://github.com/chenyihan/Simple-SQLite-ORM-Android,因为要传到github,所以代码中的注释和doc文档都是英文的,对自己英文不...

    android sqlite3 demo

    这个"android sqlite3 demo"是一个完整的示例项目,旨在帮助初学者理解如何在Android应用中有效地使用SQLite3进行数据的增删改查操作。 首先,我们来了解一下SQLite3在Android中的基本用法。在Android应用中,...

    android sqlite可视化工具

    在Android开发中,SQLite是一个内置的关系型数据库系统,用于存储应用程序的数据。SQLite数据库因其轻量级、高效且易于集成的特点,被广泛应用于移动设备。为了更方便地管理和操作SQLite数据库,开发者通常会借助...

    android 4.4 api 19 sqlite3 not found sqlite3_enable_load_extension

    2.CANNOT LINK EXECUTABLE: cannot locate symbol "sqlite3_enable_load_extension" referenced by "sqlite3" 适用于android 4.4 API 19版本,使用方法 1. 包含3个文件 sqlite3,libsqlite_jni.so,libsqlite.so 2. ...

    Android-sqlite3命令-Android开发-sqlite3_armv7

    本文将深入探讨`sqlite3`命令行工具在Android环境下的应用,尤其是针对ARM架构的不同版本。 首先,`sqlite3`是SQLite数据库系统的命令行接口,允许开发者执行SQL语句,进行数据查询、更新、创建表以及管理数据库等...

    Android数据库SQLite详解

    在Android开发中,SQLite是一个非常重要的组成部分,它是一个轻量级的、开源的、嵌入式的SQL数据库引擎,被广泛用于存储和管理应用程序中的数据。SQLite具有高效、可靠且易于集成的特点,使得它成为Android应用数据...

    sqlite3以及所依赖的文件 Android

    此外,对于开发者来说,理解SQLite3的基本操作语法,如创建表、插入数据、查询、更新和删除等,也是非常重要的,这有助于在命令行环境中高效地管理数据库。 总之,SQLite3是Android应用开发中不可或缺的一部分,...

    sqlite-android,android sqlite支持库.zip

    Android 系统自始至终内置了 SQLite 支持,允许开发者在本地创建、查询和更新数据库。 "sqlite-android,android sqlite支持库.zip" 文件是一个专门为 Android 平台优化的 SQLite 支持库,它提供了最新的 SQLite ...

    Android SQLite源码+说明

    `Android&SQLite.doc`可能是文档部分,它可能包含以下内容:SQLite数据库的创建和打开,如何使用SQLiteOpenHelper类来管理数据库版本,SQLite表的创建语句,如何执行SQL查询,事务处理,以及如何在Android应用中插入...

    AndroidSQLite.zip_android sqlite_androidsqlite _sqlite_sqlite3 a

    本教程主要围绕Android平台上的SQLite数据库进行讲解,包括如何创建、查询、插入、更新和删除数据。 一、SQLite数据库的基础概念 SQLite是一个嵌入式数据库,这意味着它不需要单独的服务器进程,而是直接与应用程序...

    测试android sqlite insert and delete 方法的返回值

    验证android sqlite数据库insert 和delete 方法返回值的具体规律 insert 插入一行,如果当前最大id是4,insert新的一条记录id是5 ,如果把5删除, 在insert一条新的记录id还是5,如果删除的是id为4的记录, 再新增一...

    android sqlite3实例

    【Android SQLite3 实例详解】 在Android开发中,SQLite3是一个内置的关系型数据库,用于存储应用程序的数据。SQLite3提供了一种轻量级、高效的本地数据存储解决方案,无需服务器支持,适用于资源有限的移动设备。...

    android SQLite DBHelper 单例模式 实现

    android SQLite DBHelper 单例模式 实现 dbhelper=DBHelper.getInstance(this);

    android sqlite增删

    输入用户姓名和学号,点击注册按钮,可以直接在sqlite数据库内添加该用户的姓名学号,并跳转到另一页面,该页面显示sqlite内所有注册用户的信息.点击一条信息,可以选择是否删除,删除之后,数据库内将不存在该用户信息.

    Android中SQLite数据库查看工具

    SQLite是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。...SQLite 支持 SQL92(SQL2)标准的大多数查询语言的功能。 SQLite 使用 ANSI-C 编写的,并提供了简单和易于使用的 API。

    Android平台sqlite3数据库

    在Android平台上,SQLite3是一个至关重要的组件,它是一个轻量级的、自包含的、无服务器的、事务型的关系数据库引擎。这篇知识分享将深入探讨SQLite3在Android系统中的应用,以及如何处理从AVD(Android Virtual ...

    android 6.0 可用 sqlite3 和so文件

    android 6.0 可用 sqlite3 和so文件 adb push D:\temp\android_arm_sqlite3\libsqlite_jni.so /system/lib/ adb push D:\temp\android_arm_sqlite3\libsqlite.so /system/lib/ adb push D:\temp\android_arm_sqlite...

Global site tag (gtag.js) - Google Analytics