-
- package an.sqlite1;
import an.sqlite3.db.DatabaseHelper;
import android.app.Activity;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class SQLiteActivity extends Activity {
private Button createDatabase;
private Button updateDatabase;
private Button insert;
private Button update;
private Button query;
private Button delete;
private Button deleteTable;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
createDatabase=(Button)findViewById(R.id.createDatabase);
createDatabase.setOnClickListener(new CreateListener());
updateDatabase=(Button)findViewById(R.id.updateDatabase);
updateDatabase.setOnClickListener(new UpdateListener());
insert=(Button)findViewById(R.id.insert);
insert.setOnClickListener(new InsertListener());
update=(Button)findViewById(R.id.update);
update.setOnClickListener(new UpdateRecordListener());
query=(Button)findViewById(R.id.query);
query.setOnClickListener(new QueryListener());
delete=(Button)findViewById(R.id.delete);
delete.setOnClickListener(new DeleteListener());
deleteTable=(Button)findViewById(R.id.deleteTable);
deleteTable.setOnClickListener(new DeleteTableListener());
}
class CreateListener implements OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
//创建一个DatabaseHelper对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
//只有调用DatabaseHelper对象的getReadableDatabase()方法,或者是getWritableDatabase()方法,或者是getWritableDatabase()方法之后,才会创建数据库对象
SQLiteDatabase db=dbHelper.getReadableDatabase();
}
}
class UpdateListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db",2);
SQLiteDatabase db=dbHelper.getReadableDatabase();
}
}
class DeleteTableListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
SQLiteDatabase db=dbHelper.getReadableDatabase();
db.execSQL("DROP TABLE IF exists test_an_db");
System.out.println("删除了test_an_db表");
}
}
class InsertListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("InsertListener");
//生成ContentValues对象,对数据库写操作
ContentValues values=new ContentValues();
//想该对象当中插入键值对,其中键是列名,值必须
values.put("id", 1);
values.put("name", "zhangsan");
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
//调用insert方法,就可以将数据插入到数据库当中
db.insert("user", null, values);
}
}
//更新操作就想当用与SQL语句中的update语句
//update table set xxx=xx where x=xxxx
class UpdateRecordListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("UpdateRecordListener");
//得到一个可写的SQLiteDatabase对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
ContentValues values=new ContentValues();
values.put("name", "zhangsanfeng");
//第一个参数是要更新的表名,
//第二个参数是一个ContentValues对象
//第三个参数是where字句,不包括where (?是占位符)
db.update("user", values, "id=?", new String[]{"1"});
}
}
class QueryListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("QueryListener");
//得到一个可写的SQLiteDatabase对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getReadableDatabase();
Cursor cursor=db.query("user", new String[]{"id","name"},"id=?",new String[]{"1"},null, null, null);
while(cursor.moveToNext()){
String name=cursor.getString(cursor.getColumnIndex("name"));
System.out.println("query--->"+name);
}
}
}
class DeleteListener implements OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
db.delete("user", "id=?", new String[]{"1"});
System.out.println("删除了:id=1");
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.sqlite, menu);
return true;
}
}
-------------------------------------------------------------------------
package an.sqlite3.db;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
//DatabaseHelper作为一个访问SQLite的助手类,提供两个方面的功能
//第一,getReadableDatabase(),getWritableDatabase()可以获得SQLiteDatabase对象,通过该对象才可以对数据库进行操作
//第二,提供了onCreate()和onUpgrade()两个回调函数,允许我们在创建和升级数据库时,进行自己的操作
public class DatabaseHelper extends SQLiteOpenHelper {
private static final int VERSION=1;
//在SQLiteOpenHelper的子类中,必须有该构造函数
public DatabaseHelper(Context context, String name, CursorFactory factory,
int version) {
//必须通过super调用父类中的构造函数
super(context, name, factory, version);
// TODO Auto-generated constructor stub
}
//调用了下面三个参数的构造函数
public DatabaseHelper(Context context,String name){
this(context,name,VERSION);
}
// 调用了第一个四个参数的构造函数
public DatabaseHelper(Context context,String name,int version){
this(context,name,null,VERSION);
}
//该函数是在第一次创建数据库的时候执行, 实际上是在第一次得到SQLiteDatabase对象的时候,才会调用这个方法
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
System.out.println("create a Database");
//execSQL函数用于执行SQL语句 (回调函数)
db.execSQL("create table user(id int,name varchar(20))");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
System.out.println("update a Database");
}
}游戏开发Android源码招聘学习路线图
帖子
搜索
热搜: 二维码定时器手电筒滑块斗地主书架定位买手机聊天游戏开发游戏股票查询机顶盒通话记录二维码扫描振动器listviewfragment音乐播放器播放器
eoe 移动开发者论坛»社区›Android开发交流›Android实例教程›初学者的sqlite操作android数据库
返回列表发新帖回复
查看: 194|回复: 0
打印 上一主题 下一主题
收起左侧 [Android实例] 初学者的sqlite操作android数据库 [复制链接]
mi.你
18
主题
33
帖子
604
e币
电梯直达跳转到指定楼层 楼主
发表于 2014-11-9 00:04:28 | 只看该作者 回帖奖励
package an.sqlite1;
import an.sqlite3.db.DatabaseHelper;
import android.app.Activity;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class SQLiteActivity extends Activity {
private Button createDatabase;
private Button updateDatabase;
private Button insert;
private Button update;
private Button query;
private Button delete;
private Button deleteTable;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
createDatabase=(Button)findViewById(R.id.createDatabase);
createDatabase.setOnClickListener(new CreateListener());
updateDatabase=(Button)findViewById(R.id.updateDatabase);
updateDatabase.setOnClickListener(new UpdateListener());
insert=(Button)findViewById(R.id.insert);
insert.setOnClickListener(new InsertListener());
update=(Button)findViewById(R.id.update);
update.setOnClickListener(new UpdateRecordListener());
query=(Button)findViewById(R.id.query);
query.setOnClickListener(new QueryListener());
delete=(Button)findViewById(R.id.delete);
delete.setOnClickListener(new DeleteListener());
deleteTable=(Button)findViewById(R.id.deleteTable);
deleteTable.setOnClickListener(new DeleteTableListener());
}
class CreateListener implements OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
//创建一个DatabaseHelper对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
//只有调用DatabaseHelper对象的getReadableDatabase()方法,或者是getWritableDatabase()方法,或者是getWritableDatabase()方法之后,才会创建数据库对象
SQLiteDatabase db=dbHelper.getReadableDatabase();
}
}
class UpdateListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db",2);
SQLiteDatabase db=dbHelper.getReadableDatabase();
}
}
class DeleteTableListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
SQLiteDatabase db=dbHelper.getReadableDatabase();
db.execSQL("DROP TABLE IF exists test_an_db");
System.out.println("删除了test_an_db表");
}
}
class InsertListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("InsertListener");
//生成ContentValues对象,对数据库写操作
ContentValues values=new ContentValues();
//想该对象当中插入键值对,其中键是列名,值必须
values.put("id", 1);
values.put("name", "zhangsan");
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
//调用insert方法,就可以将数据插入到数据库当中
db.insert("user", null, values);
}
}
//更新操作就想当用与SQL语句中的update语句
//update table set xxx=xx where x=xxxx
class UpdateRecordListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("UpdateRecordListener");
//得到一个可写的SQLiteDatabase对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
ContentValues values=new ContentValues();
values.put("name", "zhangsanfeng");
//第一个参数是要更新的表名,
//第二个参数是一个ContentValues对象
//第三个参数是where字句,不包括where (?是占位符)
db.update("user", values, "id=?", new String[]{"1"});
}
}
class QueryListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("QueryListener");
//得到一个可写的SQLiteDatabase对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getReadableDatabase();
Cursor cursor=db.query("user", new String[]{"id","name"},"id=?",new String[]{"1"},null, null, null);
while(cursor.moveToNext()){
String name=cursor.getString(cursor.getColumnIndex("name"));
System.out.println("query--->"+name);
}
}
}
class DeleteListener implements OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
db.delete("user", "id=?", new String[]{"1"});
System.out.println("删除了:id=1");
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.sqlite, menu);
return true;
}
}
-------------------------------------------------------------------------
package an.sqlite3.db;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
//DatabaseHelper作为一个访问SQLite的助手类,提供两个方面的功能
//第一,getReadableDatabase(),getWritableDatabase()可以获得SQLiteDatabase对象,通过该对象才可以对数据库进行操作
//第二,提供了onCreate()和onUpgrade()两个回调函数,允许我们在创建和升级数据库时,进行自己的操作
public class DatabaseHelper extends SQLiteOpenHelper {
private static final int VERSION=1;
//在SQLiteOpenHelper的子类中,必须有该构造函数
public DatabaseHelper(Context context, String name, CursorFactory factory,
int version) {
//必须通过super调用父类中的构造函数
super(context, name, factory, version);
// TODO Auto-generated constructor stub
}
//调用了下面三个参数的构造函数
public DatabaseHelper(Context context,String name){
this(context,name,VERSION);
}
// 调用了第一个四个参数的构造函数
public DatabaseHelper(Context context,String name,int version){
this(context,name,null,VERSION);
}
//该函数是在第一次创建数据库的时候执行, 实际上是在第一次得到SQLiteDatabase对象的时候,才会调用这个方法
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
System.out.println("create a Database");
//execSQL函数用于执行SQL语句 (回调函数)
db.execSQL("create table user(id int,name varchar(20))");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
System.out.println("update a Database");
}
}
[Android实例] 初学者的sqlite操作android数据库
package an.sqlite1;
import an.sqlite3.db.DatabaseHelper;
import android.app.Activity;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class SQLiteActivity extends Activity {
private Button createDatabase;
private Button updateDatabase;
private Button insert;
private Button update;
private Button query;
private Button delete;
private Button deleteTable;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
createDatabase=(Button)findViewById(R.id.createDatabase);
createDatabase.setOnClickListener(new CreateListener());
updateDatabase=(Button)findViewById(R.id.updateDatabase);
updateDatabase.setOnClickListener(new UpdateListener());
insert=(Button)findViewById(R.id.insert);
insert.setOnClickListener(new InsertListener());
update=(Button)findViewById(R.id.update);
update.setOnClickListener(new UpdateRecordListener());
query=(Button)findViewById(R.id.query);
query.setOnClickListener(new QueryListener());
delete=(Button)findViewById(R.id.delete);
delete.setOnClickListener(new DeleteListener());
deleteTable=(Button)findViewById(R.id.deleteTable);
deleteTable.setOnClickListener(new DeleteTableListener());
}
class CreateListener implements OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
//创建一个DatabaseHelper对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
//只有调用DatabaseHelper对象的getReadableDatabase()方法,或者是getWritableDatabase()方法,或者是getWritableDatabase()方法之后,才会创建数据库对象
SQLiteDatabase db=dbHelper.getReadableDatabase();
}
}
class UpdateListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db",2);
SQLiteDatabase db=dbHelper.getReadableDatabase();
}
}
class DeleteTableListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
SQLiteDatabase db=dbHelper.getReadableDatabase();
db.execSQL("DROP TABLE IF exists test_an_db");
System.out.println("删除了test_an_db表");
}
}
class InsertListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("InsertListener");
//生成ContentValues对象,对数据库写操作
ContentValues values=new ContentValues();
//想该对象当中插入键值对,其中键是列名,值必须
values.put("id", 1);
values.put("name", "zhangsan");
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
//调用insert方法,就可以将数据插入到数据库当中
db.insert("user", null, values);
}
}
//更新操作就想当用与SQL语句中的update语句
//update table set xxx=xx where x=xxxx
class UpdateRecordListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("UpdateRecordListener");
//得到一个可写的SQLiteDatabase对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
ContentValues values=new ContentValues();
values.put("name", "zhangsanfeng");
//第一个参数是要更新的表名,
//第二个参数是一个ContentValues对象
//第三个参数是where字句,不包括where (?是占位符)
db.update("user", values, "id=?", new String[]{"1"});
}
}
class QueryListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("QueryListener");
//得到一个可写的SQLiteDatabase对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getReadableDatabase();
Cursor cursor=db.query("user", new String[]{"id","name"},"id=?",new String[]{"1"},null, null, null);
while(cursor.moveToNext()){
String name=cursor.getString(cursor.getColumnIndex("name"));
System.out.println("query--->"+name);
}
}
}
class DeleteListener implements OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
db.delete("user", "id=?", new String[]{"1"});
System.out.println("删除了:id=1");
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.sqlite, menu);
return true;
}
}
-------------------------------------------------------------------------
package an.sqlite3.db;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
//DatabaseHelper作为一个访问SQLite的助手类,提供两个方面的功能
//第一,getReadableDatabase(),getWritableDatabase()可以获得SQLiteDatabase对象,通过该对象才可以对数据库进行操作
//第二,提供了onCreate()和onUpgrade()两个回调函数,允许我们在创建和升级数据库时,进行自己的操作
public class DatabaseHelper extends SQLiteOpenHelper {
private static final int VERSION=1;
//在SQLiteOpenHelper的子类中,必须有该构造函数
public DatabaseHelper(Context context, String name, CursorFactory factory,
int version) {
//必须通过super调用父类中的构造函数
super(context, name, factory, version);
// TODO Auto-generated constructor stub
}
//调用了下面三个参数的构造函数
public DatabaseHelper(Context context,String name){
this(context,name,VERSION);
}
// 调用了第一个四个参数的构造函数
public DatabaseHelper(Context context,String name,int version){
this(context,name,null,VERSION);
}
//该函数是在第一次创建数据库的时候执行, 实际上是在第一次得到SQLiteDatabase对象的时候,才会调用这个方法
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
System.out.println("create a Database");
//execSQL函数用于执行SQL语句 (回调函数)
db.execSQL("create table user(id int,name varchar(20))");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
System.out.println("update a Database");
}
} - Android源码
- 招聘
- 学习路线图
[Android实例] 初学者的sqlite操作android数据库
package an.sqlite1;
import an.sqlite3.db.DatabaseHelper;
import android.app.Activity;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class SQLiteActivity extends Activity {
private Button createDatabase;
private Button updateDatabase;
private Button insert;
private Button update;
private Button query;
private Button delete;
private Button deleteTable;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
createDatabase=(Button)findViewById(R.id.createDatabase);
createDatabase.setOnClickListener(new CreateListener());
updateDatabase=(Button)findViewById(R.id.updateDatabase);
updateDatabase.setOnClickListener(new UpdateListener());
insert=(Button)findViewById(R.id.insert);
insert.setOnClickListener(new InsertListener());
update=(Button)findViewById(R.id.update);
update.setOnClickListener(new UpdateRecordListener());
query=(Button)findViewById(R.id.query);
query.setOnClickListener(new QueryListener());
delete=(Button)findViewById(R.id.delete);
delete.setOnClickListener(new DeleteListener());
deleteTable=(Button)findViewById(R.id.deleteTable);
deleteTable.setOnClickListener(new DeleteTableListener());
}
class CreateListener implements OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
//创建一个DatabaseHelper对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
//只有调用DatabaseHelper对象的getReadableDatabase()方法,或者是getWritableDatabase()方法,或者是getWritableDatabase()方法之后,才会创建数据库对象
SQLiteDatabase db=dbHelper.getReadableDatabase();
}
}
class UpdateListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db",2);
SQLiteDatabase db=dbHelper.getReadableDatabase();
}
}
class DeleteTableListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
SQLiteDatabase db=dbHelper.getReadableDatabase();
db.execSQL("DROP TABLE IF exists test_an_db");
System.out.println("删除了test_an_db表");
}
}
class InsertListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("InsertListener");
//生成ContentValues对象,对数据库写操作
ContentValues values=new ContentValues();
//想该对象当中插入键值对,其中键是列名,值必须
values.put("id", 1);
values.put("name", "zhangsan");
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
//调用insert方法,就可以将数据插入到数据库当中
db.insert("user", null, values);
}
}
//更新操作就想当用与SQL语句中的update语句
//update table set xxx=xx where x=xxxx
class UpdateRecordListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("UpdateRecordListener");
//得到一个可写的SQLiteDatabase对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
ContentValues values=new ContentValues();
values.put("name", "zhangsanfeng");
//第一个参数是要更新的表名,
//第二个参数是一个ContentValues对象
//第三个参数是where字句,不包括where (?是占位符)
db.update("user", values, "id=?", new String[]{"1"});
}
}
class QueryListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("QueryListener");
//得到一个可写的SQLiteDatabase对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getReadableDatabase();
Cursor cursor=db.query("user", new String[]{"id","name"},"id=?",new String[]{"1"},null, null, null);
while(cursor.moveToNext()){
String name=cursor.getString(cursor.getColumnIndex("name"));
System.out.println("query--->"+name);
}
}
}
class DeleteListener implements OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
db.delete("user", "id=?", new String[]{"1"});
System.out.println("删除了:id=1");
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.sqlite, menu);
return true;
}
}
-------------------------------------------------------------------------
package an.sqlite3.db;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
//DatabaseHelper作为一个访问SQLite的助手类,提供两个方面的功能
//第一,getReadableDatabase(),getWritableDatabase()可以获得SQLiteDatabase对象,通过该对象才可以对数据库进行操作
//第二,提供了onCreate()和onUpgrade()两个回调函数,允许我们在创建和升级数据库时,进行自己的操作
public class DatabaseHelper extends SQLiteOpenHelper {
private static final int VERSION=1;
//在SQLiteOpenHelper的子类中,必须有该构造函数
public DatabaseHelper(Context context, String name, CursorFactory factory,
int version) {
//必须通过super调用父类中的构造函数
super(context, name, factory, version);
// TODO Auto-generated constructor stub
}
//调用了下面三个参数的构造函数
public DatabaseHelper(Context context,String name){
this(context,name,VERSION);
}
// 调用了第一个四个参数的构造函数
public DatabaseHelper(Context context,String name,int version){
this(context,name,null,VERSION);
}
//该函数是在第一次创建数据库的时候执行, 实际上是在第一次得到SQLiteDatabase对象的时候,才会调用这个方法
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
System.out.println("create a Database");
//execSQL函数用于执行SQL语句 (回调函数)
db.execSQL("create table user(id int,name varchar(20))");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
System.out.println("update a Database");
}
}
[Android实例] 初学者的sqlite操作android数据库
package an.sqlite1;
import an.sqlite3.db.DatabaseHelper;
import android.app.Activity;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class SQLiteActivity extends Activity {
private Button createDatabase;
private Button updateDatabase;
private Button insert;
private Button update;
private Button query;
private Button delete;
private Button deleteTable;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
createDatabase=(Button)findViewById(R.id.createDatabase);
createDatabase.setOnClickListener(new CreateListener());
updateDatabase=(Button)findViewById(R.id.updateDatabase);
updateDatabase.setOnClickListener(new UpdateListener());
insert=(Button)findViewById(R.id.insert);
insert.setOnClickListener(new InsertListener());
update=(Button)findViewById(R.id.update);
update.setOnClickListener(new UpdateRecordListener());
query=(Button)findViewById(R.id.query);
query.setOnClickListener(new QueryListener());
delete=(Button)findViewById(R.id.delete);
delete.setOnClickListener(new DeleteListener());
deleteTable=(Button)findViewById(R.id.deleteTable);
deleteTable.setOnClickListener(new DeleteTableListener());
}
class CreateListener implements OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
//创建一个DatabaseHelper对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
//只有调用DatabaseHelper对象的getReadableDatabase()方法,或者是getWritableDatabase()方法,或者是getWritableDatabase()方法之后,才会创建数据库对象
SQLiteDatabase db=dbHelper.getReadableDatabase();
}
}
class UpdateListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db",2);
SQLiteDatabase db=dbHelper.getReadableDatabase();
}
}
class DeleteTableListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
SQLiteDatabase db=dbHelper.getReadableDatabase();
db.execSQL("DROP TABLE IF exists test_an_db");
System.out.println("删除了test_an_db表");
}
}
class InsertListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("InsertListener");
//生成ContentValues对象,对数据库写操作
ContentValues values=new ContentValues();
//想该对象当中插入键值对,其中键是列名,值必须
values.put("id", 1);
values.put("name", "zhangsan");
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
//调用insert方法,就可以将数据插入到数据库当中
db.insert("user", null, values);
}
}
//更新操作就想当用与SQL语句中的update语句
//update table set xxx=xx where x=xxxx
class UpdateRecordListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("UpdateRecordListener");
//得到一个可写的SQLiteDatabase对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
ContentValues values=new ContentValues();
values.put("name", "zhangsanfeng");
//第一个参数是要更新的表名,
//第二个参数是一个ContentValues对象
//第三个参数是where字句,不包括where (?是占位符)
db.update("user", values, "id=?", new String[]{"1"});
}
}
class QueryListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("QueryListener");
//得到一个可写的SQLiteDatabase对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getReadableDatabase();
Cursor cursor=db.query("user", new String[]{"id","name"},"id=?",new String[]{"1"},null, null, null);
while(cursor.moveToNext()){
String name=cursor.getString(cursor.getColumnIndex("name"));
System.out.println("query--->"+name);
}
}
}
class DeleteListener implements OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
db.delete("user", "id=?", new String[]{"1"});
System.out.println("删除了:id=1");
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.sqlite, menu);
return true;
}
}
-------------------------------------------------------------------------
package an.sqlite3.db;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
//DatabaseHelper作为一个访问SQLite的助手类,提供两个方面的功能
//第一,getReadableDatabase(),getWritableDatabase()可以获得SQLiteDatabase对象,通过该对象才可以对数据库进行操作
//第二,提供了onCreate()和onUpgrade()两个回调函数,允许我们在创建和升级数据库时,进行自己的操作
public class DatabaseHelper extends SQLiteOpenHelper {
private static final int VERSION=1;
//在SQLiteOpenHelper的子类中,必须有该构造函数
public DatabaseHelper(Context context, String name, CursorFactory factory,
int version) {
//必须通过super调用父类中的构造函数
super(context, name, factory, version);
// TODO Auto-generated constructor stub
}
//调用了下面三个参数的构造函数
public DatabaseHelper(Context context,String name){
this(context,name,VERSION);
}
// 调用了第一个四个参数的构造函数
public DatabaseHelper(Context context,String name,int version){
this(context,name,null,VERSION);
}
//该函数是在第一次创建数据库的时候执行, 实际上是在第一次得到SQLiteDatabase对象的时候,才会调用这个方法
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
System.out.println("create a Database");
//execSQL函数用于执行SQL语句 (回调函数)
db.execSQL("create table user(id int,name varchar(20))");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
System.out.println("update a Database");
}
}
[Android实例] 初学者的sqlite操作android数据库
package an.sqlite1;
import an.sqlite3.db.DatabaseHelper;
import android.app.Activity;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class SQLiteActivity extends Activity {
private Button createDatabase;
private Button updateDatabase;
private Button insert;
private Button update;
private Button query;
private Button delete;
private Button deleteTable;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
createDatabase=(Button)findViewById(R.id.createDatabase);
createDatabase.setOnClickListener(new CreateListener());
updateDatabase=(Button)findViewById(R.id.updateDatabase);
updateDatabase.setOnClickListener(new UpdateListener());
insert=(Button)findViewById(R.id.insert);
insert.setOnClickListener(new InsertListener());
update=(Button)findViewById(R.id.update);
update.setOnClickListener(new UpdateRecordListener());
query=(Button)findViewById(R.id.query);
query.setOnClickListener(new QueryListener());
delete=(Button)findViewById(R.id.delete);
delete.setOnClickListener(new DeleteListener());
deleteTable=(Button)findViewById(R.id.deleteTable);
deleteTable.setOnClickListener(new DeleteTableListener());
}
class CreateListener implements OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
//创建一个DatabaseHelper对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
//只有调用DatabaseHelper对象的getReadableDatabase()方法,或者是getWritableDatabase()方法,或者是getWritableDatabase()方法之后,才会创建数据库对象
SQLiteDatabase db=dbHelper.getReadableDatabase();
}
}
class UpdateListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db",2);
SQLiteDatabase db=dbHelper.getReadableDatabase();
}
}
class DeleteTableListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
SQLiteDatabase db=dbHelper.getReadableDatabase();
db.execSQL("DROP TABLE IF exists test_an_db");
System.out.println("删除了test_an_db表");
}
}
class InsertListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("InsertListener");
//生成ContentValues对象,对数据库写操作
ContentValues values=new ContentValues();
//想该对象当中插入键值对,其中键是列名,值必须
values.put("id", 1);
values.put("name", "zhangsan");
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this, "test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
//调用insert方法,就可以将数据插入到数据库当中
db.insert("user", null, values);
}
}
//更新操作就想当用与SQL语句中的update语句
//update table set xxx=xx where x=xxxx
class UpdateRecordListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("UpdateRecordListener");
//得到一个可写的SQLiteDatabase对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
ContentValues values=new ContentValues();
values.put("name", "zhangsanfeng");
//第一个参数是要更新的表名,
//第二个参数是一个ContentValues对象
//第三个参数是where字句,不包括where (?是占位符)
db.update("user", values, "id=?", new String[]{"1"});
}
}
class QueryListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("QueryListener");
//得到一个可写的SQLiteDatabase对象
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getReadableDatabase();
Cursor cursor=db.query("user", new String[]{"id","name"},"id=?",new String[]{"1"},null, null, null);
while(cursor.moveToNext()){
String name=cursor.getString(cursor.getColumnIndex("name"));
System.out.println("query--->"+name);
}
}
}
class DeleteListener implements OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
DatabaseHelper dbHelper=new DatabaseHelper(SQLiteActivity.this,"test_an_db");
SQLiteDatabase db=dbHelper.getWritableDatabase();
db.delete("user", "id=?", new String[]{"1"});
System.out.println("删除了:id=1");
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.sqlite, menu);
return true;
}
}
-------------------------------------------------------------------------
package an.sqlite3.db;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
//DatabaseHelper作为一个访问SQLite的助手类,提供两个方面的功能
//第一,getReadableDatabase(),getWritableDatabase()可以获得SQLiteDatabase对象,通过该对象才可以对数据库进行操作
//第二,提供了onCreate()和onUpgrade()两个回调函数,允许我们在创建和升级数据库时,进行自己的操作
public class DatabaseHelper extends SQLiteOpenHelper {
private static final int VERSION=1;
//在SQLiteOpenHelper的子类中,必须有该构造函数
public DatabaseHelper(Context context, String name, CursorFactory factory,
int version) {
//必须通过super调用父类中的构造函数
super(context, name, factory, version);
// TODO Auto-generated constructor stub
}
//调用了下面三个参数的构造函数
public DatabaseHelper(Context context,String name){
this(context,name,VERSION);
}
// 调用了第一个四个参数的构造函数
public DatabaseHelper(Context context,String name,int version){
this(context,name,null,VERSION);
}
//该函数是在第一次创建数据库的时候执行, 实际上是在第一次得到SQLiteDatabase对象的时候,才会调用这个方法
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
System.out.println("create a Database");
//execSQL函数用于执行SQL语句 (回调函数)
db.execSQL("create table user(id int,name varchar(20))");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
System.out.println("update a Database");
}
} - package an.sqlite1;
- Android源码
- 招聘
- 学习路线图
[Android实例] 初学者的sqlite操作android数据库 |
|
[Android实例] 初学者的sqlite操作android数据库 |
|