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进行数据操作,并提供了一个实用的SQLite管理工具——sqlite3.exe。 SQLite数据库在Android中的应用主要包括创建数据库、创建表、...
android5.0以上版本sqlite3, 根据手机sdk来选择sqlite3
一个简单的Android SQLite ORM框架不想花资源分的同学可以上我的github主页下载:https://github.com/chenyihan/Simple-SQLite-ORM-Android,因为要传到github,所以代码中的注释和doc文档都是英文的,对自己英文不...
这个"android sqlite3 demo"是一个完整的示例项目,旨在帮助初学者理解如何在Android应用中有效地使用SQLite3进行数据的增删改查操作。 首先,我们来了解一下SQLite3在Android中的基本用法。在Android应用中,...
在Android开发中,SQLite是一个内置的关系型数据库系统,用于存储应用程序的数据。SQLite数据库因其轻量级、高效且易于集成的特点,被广泛应用于移动设备。为了更方便地管理和操作SQLite数据库,开发者通常会借助...
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. ...
本文将深入探讨`sqlite3`命令行工具在Android环境下的应用,尤其是针对ARM架构的不同版本。 首先,`sqlite3`是SQLite数据库系统的命令行接口,允许开发者执行SQL语句,进行数据查询、更新、创建表以及管理数据库等...
在Android开发中,SQLite是一个非常重要的组成部分,它是一个轻量级的、开源的、嵌入式的SQL数据库引擎,被广泛用于存储和管理应用程序中的数据。SQLite具有高效、可靠且易于集成的特点,使得它成为Android应用数据...
此外,对于开发者来说,理解SQLite3的基本操作语法,如创建表、插入数据、查询、更新和删除等,也是非常重要的,这有助于在命令行环境中高效地管理数据库。 总之,SQLite3是Android应用开发中不可或缺的一部分,...
Android 系统自始至终内置了 SQLite 支持,允许开发者在本地创建、查询和更新数据库。 "sqlite-android,android sqlite支持库.zip" 文件是一个专门为 Android 平台优化的 SQLite 支持库,它提供了最新的 SQLite ...
`Android&SQLite.doc`可能是文档部分,它可能包含以下内容:SQLite数据库的创建和打开,如何使用SQLiteOpenHelper类来管理数据库版本,SQLite表的创建语句,如何执行SQL查询,事务处理,以及如何在Android应用中插入...
本教程主要围绕Android平台上的SQLite数据库进行讲解,包括如何创建、查询、插入、更新和删除数据。 一、SQLite数据库的基础概念 SQLite是一个嵌入式数据库,这意味着它不需要单独的服务器进程,而是直接与应用程序...
验证android sqlite数据库insert 和delete 方法返回值的具体规律 insert 插入一行,如果当前最大id是4,insert新的一条记录id是5 ,如果把5删除, 在insert一条新的记录id还是5,如果删除的是id为4的记录, 再新增一...
【Android SQLite3 实例详解】 在Android开发中,SQLite3是一个内置的关系型数据库,用于存储应用程序的数据。SQLite3提供了一种轻量级、高效的本地数据存储解决方案,无需服务器支持,适用于资源有限的移动设备。...
android SQLite DBHelper 单例模式 实现 dbhelper=DBHelper.getInstance(this);
输入用户姓名和学号,点击注册按钮,可以直接在sqlite数据库内添加该用户的姓名学号,并跳转到另一页面,该页面显示sqlite内所有注册用户的信息.点击一条信息,可以选择是否删除,删除之后,数据库内将不存在该用户信息.
SQLite是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。...SQLite 支持 SQL92(SQL2)标准的大多数查询语言的功能。 SQLite 使用 ANSI-C 编写的,并提供了简单和易于使用的 API。
在Android平台上,SQLite3是一个至关重要的组件,它是一个轻量级的、自包含的、无服务器的、事务型的关系数据库引擎。这篇知识分享将深入探讨SQLite3在Android系统中的应用,以及如何处理从AVD(Android Virtual ...
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...