设为首页 加入收藏

TOP

Android怎么使用数据库简述(一)
2014-11-24 03:11:46 来源: 作者: 【 】 浏览:7
Tags:Android 怎么 使用 数据库 简述

数据库操作起来还比较简单,但是缓存就比较难了。独立项目的缓存技术就够呛的了。这里先贴下数据库的代码吧!
创建数据库的代码:


package com.example.ex_templete;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class MySqliteHelper extends SQLiteOpenHelper
{
public MySqliteHelper(Context context, int version)
{
super(context, "cache.db", null, version);
}
@Override
public void onCreate(SQLiteDatabase db)
{
String sql = "CREATE TABLE person( " +
"persionid INTEGER PRIMARY KEY AUTOINCREMENT," +
"name VARCHAR(20), " +
"phone VARCHAR(20))";
db.execSQL(sql);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)
{
db.execSQL("ALTER TABLE person ADD salary");
}
}


使用数据库的代码:
package com.example.ex_templete;
import java.util.ArrayList;
import android.Manifest.permission;
import android.os.Bundle;
import android.app.Activity;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.TextView;
public class MainActivity extends Activity implements OnClickListener
{
private SQLiteDatabase mSqlDB;
private TextView mTextView;
@Override
public void onClick(View v)
{
switch (v.getId())
{
case R.id.button1:
insert();
break;
case R.id.button2:
delete();
break;
case R.id.button3:
update();
break;
case R.id.button4:
select();
break;
default:
break;
}
}
private void select()
{
String sql = "SELECT phone, name FROM person WHERE name= ORDER BY name DESC";
Cursor cursor = mSqlDB.rawQuery(sql, new String[]{"Android"});
// Cursor cursor = mSqlDB.query("person", new String[]{"phone", "name"}, "name= ", new String[]{"Android"}, null, null, null);
boolean hasData = cursor.moveToFirst();
ArrayList mData = new ArrayList();
while (hasData)
{
Person person = new Person();
person.name = cursor.getString(cursor.getColumnIndex("name"));
person.phone = cursor.getString(cursor.getColumnIndex("phone"));
mData.add(person);
hasData = cursor.moveToNext();
}
mTextView.setText(mData.toString());
}
class Person
{
String name;
String phone;
@Override
public String toString()
{
return "Person [name=" + name + ", phone=" + phone + "]";
}
}
private void update()
{
// String sql = "UPDATE person SET phone= WHERE name='Android'";
// mSqlDB.execSQL(sql , new String[]{"133333333"});
ContentValues values = new ContentValues();
values.put("phone", "133333333");
mSqlDB.update("person", values, "name= ", new String[]{"Android"});
}
private void delete()
{
// String sql = "DELETE FROM person WHERE name='Android'";
// mSqlDB.execSQL(sql );
mSqlDB.delete("person", "name= ", new String[]{"Android"});
}
private void insert()
{
// String sql = "INSERT INTO person (name, phone) VALUES" +
// " ('Android', '13888888888')";
// mSqlDB.execSQL(sql);
ContentValues values = new ContentValues();
values.put("name", "Android");
values.put("phone", "13888889999");
mSqlDB.insert("person", null, values);
}
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.button1).setOnClickListener(this);
findViewById(R.id.button2).setOnClickListener(this);
findViewById(R.id.button3).setOnClickLi

首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇解析 Linux 内核可装载模块的版本.. 下一篇Java线程输出ABCD

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·请问微信4.0版本xwec (2025-12-24 22:48:42)
·电脑NVIDIA的文件夹 (2025-12-24 22:48:40)
·如何看待微信新版本 (2025-12-24 22:48:37)
·C语言中如何将结构体 (2025-12-24 22:20:09)
·纯C语言结构体成员变 (2025-12-24 22:20:06)