Java学习者论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

恭喜Java学习者论坛(https://www.javaxxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,购买链接:点击进入购买VIP会员
JAVA高级面试进阶视频教程Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程

Go语言视频零基础入门到精通

Java架构师3期(课件+源码)

Java开发全终端实战租房项目视频教程

SpringBoot2.X入门到高级使用教程

大数据培训第六期全套视频教程

深度学习(CNN RNN GAN)算法原理

Java亿级流量电商系统视频教程

互联网架构师视频教程

年薪50万Spark2.0从入门到精通

年薪50万!人工智能学习路线教程

年薪50万!大数据从入门到精通学习路线年薪50万!机器学习入门到精通视频教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程 MySQL入门到精通教程
查看: 519|回复: 0

开发交流:Android数据库相关代码解读

[复制链接]

该用户从未签到

发表于 2011-10-24 10:34:49 | 显示全部楼层 |阅读模式
Android 手机操作系统进行实际开发中,进场会应用到数据库。而且在这一平台中对数据库的应用方法比较简单灵活。我们在这里就为大家详细介绍了相关方法,希望可以给大家带来一些帮助。
昨天进行了GUI界面设计,感受了一下android初次设计的愉悦,今天接着学习其SQLite数据库试用,将昨天的例子中数据存到数库中,并读取查看一下。 具体看代码(原写的有点问题,再改写如下):
1) Android数据库之库操作类:
package com.topsun;   

import android.content.Context;   

import android.database.Cursor;   

import android.database.sqlite.SQLiteDatabase;   

import android.util.Log;   

public class DBHelper {   

private static final String TAG = "UserDB_DBHelper.java";   

private static final String DataBaseName = "UserDB";   

SQLiteDatabase db;   

Context context;   

public DBHelper(Context context) {   

this.open(context);   

}   

private void createTabel() {   

// TODO Auto-generated method stub   

String sql = "";   

try {   

sql = "CREATE TABLE IF NOT EXISTS TestUser (ID INTEGER

PRIMARY KEY autoincrement, NAME TEXT, SEX TEXT, AGES INTEGER)";   

this.db.execSQL(sql);   

Log.v(TAG, "Create Table TestUser ok");   

} catch (Exception e) {   

Log.v(TAG, "Create Table TestUser fail");   

} finally {   

//this.db.close();   

Log.v(TAG, "Create Table TestUser ");   

}   

}   

public boolean save(String name, String sex, Integer ages) {   

String sql = "insert into TestUser values

(null,'" + name + "','" + sex   

+ "'," + ages + ")";   

try {   

this.db.execSQL(sql);   

Log.v(TAG, "insert Table TestUser 1 record ok");   

return true;   

} catch (Exception e) {   

Log.v(TAG, "insert Table TestUser 1 record fail");   

return false;   

} finally {   

//this.db.close();   

Log.v(TAG, "insert Table TestUser ");   

}   

}   

public Cursor loadAll() {   

Cursor cur = db.query("TestUser", new String[]

{ "ID", "NAME","SEX","AGES"}, null,   

null, null, null, null);   

return cur;   

}   

public void open(Context context){   

if (null == db || !this.db.isOpen()){   

this.context = context;   

this.db = context.openOrCreateDatabase(this.DataBaseName,   

context.MODE_PRIVATE, null);   

createTabel();   

Log.v(this.TAG, "create or Open DataBase。。。");   

}   

}   

public void close() {   

db.close();   

}   

}   

package com.topsun;  

import android.content.Context;  

import android.database.Cursor;  

import android.database.sqlite.SQLiteDatabase;  

import android.util.Log;  

public class DBHelper {  

private static final String TAG = "UserDB_DBHelper.java";  

private static final String DataBaseName = "UserDB";  

SQLiteDatabase db;  

Context context;  

public DBHelper(Context context) {  

this.open(context);  

}  

private void createTabel() {  

// TODO Auto-generated method stub  

String sql = "";  

try {  

sql = "CREATE TABLE IF NOT EXISTS TestUser

(ID INTEGER PRIMARY KEY autoincrement,

NAME TEXT, SEX TEXT, AGES INTEGER)";  

this.db.execSQL(sql);  

Log.v(TAG, "Create Table TestUser ok");  

} catch (Exception e) {  

Log.v(TAG, "Create Table TestUser fail");  

} finally {  

//this.db.close();  

Log.v(TAG, "Create Table TestUser ");  

}  

}  

public boolean save(String name, String sex, Integer ages) {  

String sql = "insert into TestUser values

(null,'" + name + "','" + sex  

+ "'," + ages + ")";  

try {  

this.db.execSQL(sql);  

Log.v(TAG, "insert Table TestUser 1 record ok");  

return true;  

} catch (Exception e) {  

Log.v(TAG, "insert Table TestUser 1 record fail");  

return false;  

} finally {  

//this.db.close();  

Log.v(TAG, "insert Table TestUser ");  

}  

}  

public Cursor loadAll() {  

Cursor cur = db.query("TestUser", new String[]

{ "ID", "NAME","SEX","AGES"}, null,  

null, null, null, null);  

return cur;  

}  

public void open(Context context){  

if (null == db || !this.db.isOpen()){  

this.context = context;  

this.db = context.openOrCreateDatabase(this.DataBaseName,  

context.MODE_PRIVATE, null);  

createTabel();  

Log.v(this.TAG, "create or Open DataBase。。。");  

}  

}  

public void close() {  

db.close();  

}  

}
复制代码2) Android数据库交互代码 package com.topsun;   

import android.app.Activity;   

import android.database.Cursor;   

import android.os.Bundle;   

import android.util.Log;   

import android.view.View;   

import android.view.View.OnClickListener;   

import android.widget.Button;   

import android.widget.EditText;   

public class guiwindows extends Activity

implements OnClickListener {   

EditText TEditname;   

EditText TEditsex;   

EditText TEditages;   

EditText TEditmerge;   

Button TSavebutton;   

Button TViewbutton;   

DBHelper db;   

/** Called when the activity is first created. */   

@Override   

public void onCreate(Bundle savedInstanceState) {   

super.onCreate(savedInstanceState);   

setContentView(R.layout.main);   

this.TEditname = (EditText) this.findViewById

(R.id.widgeteditname);   

this.TEditsex = (EditText) this.findViewById

(R.id.widgeteditsex);   

this.TEditages = (EditText) this.findViewById

(R.id.widgeteditages);   

TEditmerge = (EditText) this.findViewById

(R.id.widgeteditmerge);   

this.TSavebutton = (Button) this.findViewById

(R.id.widgetSavebutton);   

TViewbutton = (Button) this.findViewById

(R.id.widgetViewbutton);   

this.db = new DBHelper(this);   

this.TSavebutton.setOnClickListener(this);   

this.TViewbutton.setOnClickListener(this);   

}   

@Override   

public void onClick(View v) {   

// TODO Auto-generated method stub   

// this.TEditages.setText(this.TEditname.getText().

toString()+this.TEditsex.getText().toString());   

if (v.getId() == R.id.widgetSavebutton) {   

try {   

this.db.open(this);   

this.db.save(this.TEditname.getText().toString(), this.TEditsex   

.getText().toString(), Integer.valueOf(this.TEditages   

.getText().toString()));   

} catch (Exception e) {   

Log.v("save data", "save data fail");   

} finally {   

this.db.close();   

}   

} else if (v.getId() == R.id.widgetViewbutton && null != db) {   

this.db.open(this);   

// 浏览所有数据   

Cursor cur = db.loadAll();   

StringBuffer sf = new StringBuffer();   

cur.moveToFirst();   

while (!cur.isAfterLast()) {   

sf.append(cur.getInt(0)).append(" : ").append(cur.getString(1))   

.append(" : ").append(cur.getString(2)).append(" : ")   

.append(cur.getInt(3)).append("\n");   

cur.moveToNext();   

}   

db.close();   

this.TEditmerge.setText(sf.toString());   

}   

}   

}
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|Java学习者论坛 ( 声明:本站资料整理自互联网,用于Java学习者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

GMT+8, 2025-1-11 05:54 , Processed in 0.373574 second(s), 48 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表