Android学习笔记 - 数据库篇 (SQLite)
2012-11-20 10:50
169 查看
1.SQLite介绍
官方网站:http://www.sqlite.org/
2.SQLiteOpenHelper使用方法
getReadableDatabase() //创建或打开一个只读的数据库
getWriteableDatabase() //创建或打开一个可读写的数据库
onCreate(SQLiteDatabase db) //创建数据库
onOpen(SQLiteDatabase db) //打开数据库
onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) //更新数据库
close() //关闭数据库
3.在SQLOpenHelper的子类中,必须有该构造函数
public DatabaseHelper(Context context, String name, CursorFactory factory, int version)
[java]
view plaincopy
public class DatabaseHelper extends SQLiteOpenHelper {
// 默认版本
private static final int VERSION = 1;
// 默认构造函数
public DatabaseHelper(Context context, String name, CursorFactory factory, int version) {
super(context, name, factory, version);
}
// 构造函数(用于创建数据库)
public DatabaseHelper(Context context, String name) {
this(context, name, null, VERSION);
}
// 构造函数(用于更新数据库)
public DatabaseHelper(Context context, String name, int version) {
this(context, name, null, version);
}
@Override
public void onCreate(SQLiteDatabase db) {
System.out.println("onCreate is start...");
db.execSQL("create table user( id int, name varchar(20) )");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
System.out.println("onUpgrade is start...");
}
}
4.使用adb访问SQLite
adb shell //进行linux命令行(调试环境)
ls -l //相当于dir /w
cd data //与cd相同
sqlite3 dbname //进入SQL管理模式
.schema //查看数据库中的表
SQL语句 //可直接查询
rm -r databases //循环删除目录
5.增、删、改、查
[java]
view plaincopy
public class SQLiteActivity extends Activity {
// 声明控件
private Button btnCreate = null;
private Button btnUpgrade = null;
private Button btnInsert = null;
private Button btnUpdate = null;
private Button btnDelete = null;
private Button btnSelect = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.sqlite);
// 寻找控件
btnCreate = (Button) findViewById(R.id.btnCreateDb);
btnUpgrade = (Button) findViewById(R.id.btnUpgradeDb);
btnInsert = (Button) findViewById(R.id.btnInsertDb);
btnUpdate = (Button) findViewById(R.id.btnUpdateDb);
btnDelete = (Button) findViewById(R.id.btnDeleteDb);
btnSelect = (Button) findViewById(R.id.btnSelectDb);
// 创建数据库
btnCreate.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
System.out.println("btnCreate on start...");
DatabaseHelper helper = new DatabaseHelper(SQLiteActivity.this, "studyDb");
helper.getReadableDatabase();
}
});
// 更新数据库
btnUpgrade.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
System.out.println("btnUpgrade on start...");
DatabaseHelper helper = new DatabaseHelper(SQLiteActivity.this, "studyDb", 2);
helper.getReadableDatabase();
}
});
// 新增数据
btnInsert.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
System.out.println("btnInsert on start...");
DatabaseHelper helper = new DatabaseHelper(SQLiteActivity.this, "studyDb");
SQLiteDatabase db = helper.getWritableDatabase();
// 参数列表
ContentValues params = new ContentValues();
params.put("id", 1);
params.put("name", "dier");
// 表名、列名、参数列表
db.insert("user", null, params);
}
});
// 修改数据
btnUpdate.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
System.out.println("btnUpdate on start...");
DatabaseHelper helper = new DatabaseHelper(SQLiteActivity.this, "studyDb");
SQLiteDatabase db = helper.getWritableDatabase();
// 参数列表
ContentValues params = new ContentValues();
params.put("name", "stdier");
// 表名、参数列表、WHERE子句、子句参数
db.update("user", params, "id=?", new String[] { "1" });
}
});
// 删除数据
btnDelete.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
System.out.println("btnDelete on start...");
DatabaseHelper helper = new DatabaseHelper(SQLiteActivity.this, "studyDb");
SQLiteDatabase db = helper.getWritableDatabase();
// 表名、列名、参数列表
db.delete("user", "id=?", new String[] { "1" });
}
});
// 修改数据
btnSelect.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
System.out.println("btnSelect on start...");
DatabaseHelper helper = new DatabaseHelper(SQLiteActivity.this, "studyDb");
SQLiteDatabase db = helper.getWritableDatabase();
//表名、查询字段、WHERE子句、子句参数、groupBy、having、orderBy
Cursor cursor = db.query("user", new String[] { "id", "name" }, "id=?", new String[] { "1" }, null, null, null);
while (cursor.moveToNext()) {
System.out.println("query name -> " + cursor.getString(cursor.getColumnIndex("name")));
}
}
});
}
}
官方网站:http://www.sqlite.org/
2.SQLiteOpenHelper使用方法
getReadableDatabase() //创建或打开一个只读的数据库
getWriteableDatabase() //创建或打开一个可读写的数据库
onCreate(SQLiteDatabase db) //创建数据库
onOpen(SQLiteDatabase db) //打开数据库
onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) //更新数据库
close() //关闭数据库
3.在SQLOpenHelper的子类中,必须有该构造函数
public DatabaseHelper(Context context, String name, CursorFactory factory, int version)
[java]
view plaincopy
public class DatabaseHelper extends SQLiteOpenHelper {
// 默认版本
private static final int VERSION = 1;
// 默认构造函数
public DatabaseHelper(Context context, String name, CursorFactory factory, int version) {
super(context, name, factory, version);
}
// 构造函数(用于创建数据库)
public DatabaseHelper(Context context, String name) {
this(context, name, null, VERSION);
}
// 构造函数(用于更新数据库)
public DatabaseHelper(Context context, String name, int version) {
this(context, name, null, version);
}
@Override
public void onCreate(SQLiteDatabase db) {
System.out.println("onCreate is start...");
db.execSQL("create table user( id int, name varchar(20) )");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
System.out.println("onUpgrade is start...");
}
}
4.使用adb访问SQLite
adb shell //进行linux命令行(调试环境)
ls -l //相当于dir /w
cd data //与cd相同
sqlite3 dbname //进入SQL管理模式
.schema //查看数据库中的表
SQL语句 //可直接查询
rm -r databases //循环删除目录
5.增、删、改、查
[java]
view plaincopy
public class SQLiteActivity extends Activity {
// 声明控件
private Button btnCreate = null;
private Button btnUpgrade = null;
private Button btnInsert = null;
private Button btnUpdate = null;
private Button btnDelete = null;
private Button btnSelect = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.sqlite);
// 寻找控件
btnCreate = (Button) findViewById(R.id.btnCreateDb);
btnUpgrade = (Button) findViewById(R.id.btnUpgradeDb);
btnInsert = (Button) findViewById(R.id.btnInsertDb);
btnUpdate = (Button) findViewById(R.id.btnUpdateDb);
btnDelete = (Button) findViewById(R.id.btnDeleteDb);
btnSelect = (Button) findViewById(R.id.btnSelectDb);
// 创建数据库
btnCreate.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
System.out.println("btnCreate on start...");
DatabaseHelper helper = new DatabaseHelper(SQLiteActivity.this, "studyDb");
helper.getReadableDatabase();
}
});
// 更新数据库
btnUpgrade.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
System.out.println("btnUpgrade on start...");
DatabaseHelper helper = new DatabaseHelper(SQLiteActivity.this, "studyDb", 2);
helper.getReadableDatabase();
}
});
// 新增数据
btnInsert.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
System.out.println("btnInsert on start...");
DatabaseHelper helper = new DatabaseHelper(SQLiteActivity.this, "studyDb");
SQLiteDatabase db = helper.getWritableDatabase();
// 参数列表
ContentValues params = new ContentValues();
params.put("id", 1);
params.put("name", "dier");
// 表名、列名、参数列表
db.insert("user", null, params);
}
});
// 修改数据
btnUpdate.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
System.out.println("btnUpdate on start...");
DatabaseHelper helper = new DatabaseHelper(SQLiteActivity.this, "studyDb");
SQLiteDatabase db = helper.getWritableDatabase();
// 参数列表
ContentValues params = new ContentValues();
params.put("name", "stdier");
// 表名、参数列表、WHERE子句、子句参数
db.update("user", params, "id=?", new String[] { "1" });
}
});
// 删除数据
btnDelete.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
System.out.println("btnDelete on start...");
DatabaseHelper helper = new DatabaseHelper(SQLiteActivity.this, "studyDb");
SQLiteDatabase db = helper.getWritableDatabase();
// 表名、列名、参数列表
db.delete("user", "id=?", new String[] { "1" });
}
});
// 修改数据
btnSelect.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
System.out.println("btnSelect on start...");
DatabaseHelper helper = new DatabaseHelper(SQLiteActivity.this, "studyDb");
SQLiteDatabase db = helper.getWritableDatabase();
//表名、查询字段、WHERE子句、子句参数、groupBy、having、orderBy
Cursor cursor = db.query("user", new String[] { "id", "name" }, "id=?", new String[] { "1" }, null, null, null);
while (cursor.moveToNext()) {
System.out.println("query name -> " + cursor.getString(cursor.getColumnIndex("name")));
}
}
});
}
}
相关文章推荐
- Android学习笔记 - 数据库篇 (SQLite)
- iOS 数据库篇1—SQLite简单介绍
- Android学习笔记(五)——数据存储(二)SQLite和ContentProvider
- IOS开发数据库篇—SQLite模糊查询
- iOS 数据库篇6—SQLite常用的函数
- iOS开发数据库篇—SQLite简单介绍
- iOS开发数据库篇—SQLite简单介绍
- android学习笔记(6)-SQLite存储数据,完成CURD操作
- 数据存储之SQLite 数据库存储——第一行代码Android学习笔记
- iOS开发数据库篇—SQLite简单介绍
- iOS开发数据库篇—SQLite的应用
- Android学习笔记36-使用SQLite方式存储数据
- iOS开发数据库篇—SQLite简单介绍
- iOS开发数据库篇—SQLite的应用
- IOS开发数据库篇—SQLite模糊查询
- iOS开发数据库篇—SQLite的应用
- iOS开发数据库篇—SQLite常用的函数
- iOS开发数据库篇—SQLite简单介绍
- IOS开发数据库篇—SQLite模糊查询
- iOS开发数据库篇—SQLite的应用