SQLite操作数据库的简单应用
2014-05-24 15:38
465 查看
1. main.xml文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<Button
android:id="@+id/ButtonCreate"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="创建数据库" />
<Button
android:id="@+id/ButtonInsert"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="增加数据" />
<Button
android:id="@+id/ButtonUpdate"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="更新数据" />
<Button
android:id="@+id/ButtonQuery"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="查询数据" />
</LinearLayout>
2. MainActivity.java类
package com.example.sqlite;
import android.app.Activity;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends Activity {
private Button createBut; // 创建数据库按钮
private Button insertBut; // 增加数据库记录按钮
private Button updateBut; // 更新数据库记录按钮
private Button queryBut; // 查询数据库记录按钮
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
createBut = (Button) findViewById(R.id.ButtonCreate); // 实例化创建数据库按钮
insertBut = (Button) findViewById(R.id.ButtonInsert); // 实例化插入数据库按钮
updateBut = (Button) findViewById(R.id.ButtonUpdate); // 实例化更新数据库按钮
queryBut = (Button) findViewById(R.id.ButtonQuery); // 实例化查询数据库按钮
createBut.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SqLiteDBHelper dh = new SqLiteDBHelper(MainActivity.this,
"teatdb", null, 1);
System.out.println("create or open database success!");
SQLiteDatabase sld = dh.getReadableDatabase(); // 得到一个SQLiteDatabase对象
Toast.makeText(MainActivity.this, "创建或打开数据库",
Toast.LENGTH_SHORT).show();
}
});
insertBut.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ContentValues cv = new ContentValues(); // 得到ContentValues对象
cv.put("uid", 1); // 放入键值对,键要与列名一致,值要与列的数据一致
cv.put("uname", "zcl");
SqLiteDBHelper dh = new SqLiteDBHelper(MainActivity.this,
"testdb", null, 1);
Toast.makeText(MainActivity.this, "插入记录 ", Toast.LENGTH_SHORT)
.show();
SQLiteDatabase sld = dh.getWritableDatabase(); // 得到一个SQLiteDatabase对象
sld.insert("sqlitetest", null, cv); // 增加数据库记录
System.out.println("success insert a new content!");
}
});
updateBut.setOnClickListener(new View.OnClickListener() { // 更新数据库时调用
@Override
public void onClick(View v) {
SqLiteDBHelper dh = new SqLiteDBHelper(
MainActivity.this, "testdb", null, 1); // 创建数据库
SQLiteDatabase sld = dh.getWritableDatabase(); // 得到一个SQLiteDatabase对象
ContentValues cv = new ContentValues(); // 得到ContentValues对象
Toast.makeText(MainActivity.this, "更新记录",
Toast.LENGTH_SHORT).show();
cv.put("uname", "zcl_update");
sld.update("sqlitetest", cv, "uid=?",
new String[] { "1" });
System.out.println("success updata the content!");
}
});
queryBut.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SqLiteDBHelper dh = new SqLiteDBHelper(MainActivity.this,
"testdb", null, 1);
Toast.makeText(MainActivity.this, "查询记录", Toast.LENGTH_SHORT)
.show();
SQLiteDatabase sld = dh.getReadableDatabase(); // 得到一个SQLiteDatabase对象
Cursor cursor = sld.query("sqlitetest", new String[] { "uid",
"uname" }, "uid=?", new String[] { "1" }, null, null,
null);
while (cursor.moveToNext()) { // 打印输出
String name = cursor.getString(cursor
.getColumnIndex("uname"));
System.out.println("query result:" + name);
}
}
});
}
}
3. SqLiteDBHelper.java类
package com.example.sqlite;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
public class SqLiteDBHelper extends SQLiteOpenHelper {
public SqLiteDBHelper(Context context, String name, CursorFactory factory,
int version) { // 继承SQLiteOpenHelper的类,必须有该构造函数
super(context, name, factory, version);
}
@Override
// 在调用getReadableDatabase()或getWritableDatabase()后调用
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table sqlitetest(uid long,uname varchar(25))");
System.out.println("already create a database : sqlitetest.");
}
@Override
// 升级数据库时调用
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}
显示效果:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<Button
android:id="@+id/ButtonCreate"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="创建数据库" />
<Button
android:id="@+id/ButtonInsert"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="增加数据" />
<Button
android:id="@+id/ButtonUpdate"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="更新数据" />
<Button
android:id="@+id/ButtonQuery"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="查询数据" />
</LinearLayout>
2. MainActivity.java类
package com.example.sqlite;
import android.app.Activity;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends Activity {
private Button createBut; // 创建数据库按钮
private Button insertBut; // 增加数据库记录按钮
private Button updateBut; // 更新数据库记录按钮
private Button queryBut; // 查询数据库记录按钮
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
createBut = (Button) findViewById(R.id.ButtonCreate); // 实例化创建数据库按钮
insertBut = (Button) findViewById(R.id.ButtonInsert); // 实例化插入数据库按钮
updateBut = (Button) findViewById(R.id.ButtonUpdate); // 实例化更新数据库按钮
queryBut = (Button) findViewById(R.id.ButtonQuery); // 实例化查询数据库按钮
createBut.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SqLiteDBHelper dh = new SqLiteDBHelper(MainActivity.this,
"teatdb", null, 1);
System.out.println("create or open database success!");
SQLiteDatabase sld = dh.getReadableDatabase(); // 得到一个SQLiteDatabase对象
Toast.makeText(MainActivity.this, "创建或打开数据库",
Toast.LENGTH_SHORT).show();
}
});
insertBut.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ContentValues cv = new ContentValues(); // 得到ContentValues对象
cv.put("uid", 1); // 放入键值对,键要与列名一致,值要与列的数据一致
cv.put("uname", "zcl");
SqLiteDBHelper dh = new SqLiteDBHelper(MainActivity.this,
"testdb", null, 1);
Toast.makeText(MainActivity.this, "插入记录 ", Toast.LENGTH_SHORT)
.show();
SQLiteDatabase sld = dh.getWritableDatabase(); // 得到一个SQLiteDatabase对象
sld.insert("sqlitetest", null, cv); // 增加数据库记录
System.out.println("success insert a new content!");
}
});
updateBut.setOnClickListener(new View.OnClickListener() { // 更新数据库时调用
@Override
public void onClick(View v) {
SqLiteDBHelper dh = new SqLiteDBHelper(
MainActivity.this, "testdb", null, 1); // 创建数据库
SQLiteDatabase sld = dh.getWritableDatabase(); // 得到一个SQLiteDatabase对象
ContentValues cv = new ContentValues(); // 得到ContentValues对象
Toast.makeText(MainActivity.this, "更新记录",
Toast.LENGTH_SHORT).show();
cv.put("uname", "zcl_update");
sld.update("sqlitetest", cv, "uid=?",
new String[] { "1" });
System.out.println("success updata the content!");
}
});
queryBut.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SqLiteDBHelper dh = new SqLiteDBHelper(MainActivity.this,
"testdb", null, 1);
Toast.makeText(MainActivity.this, "查询记录", Toast.LENGTH_SHORT)
.show();
SQLiteDatabase sld = dh.getReadableDatabase(); // 得到一个SQLiteDatabase对象
Cursor cursor = sld.query("sqlitetest", new String[] { "uid",
"uname" }, "uid=?", new String[] { "1" }, null, null,
null);
while (cursor.moveToNext()) { // 打印输出
String name = cursor.getString(cursor
.getColumnIndex("uname"));
System.out.println("query result:" + name);
}
}
});
}
}
3. SqLiteDBHelper.java类
package com.example.sqlite;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
public class SqLiteDBHelper extends SQLiteOpenHelper {
public SqLiteDBHelper(Context context, String name, CursorFactory factory,
int version) { // 继承SQLiteOpenHelper的类,必须有该构造函数
super(context, name, factory, version);
}
@Override
// 在调用getReadableDatabase()或getWritableDatabase()后调用
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table sqlitetest(uid long,uname varchar(25))");
System.out.println("already create a database : sqlitetest.");
}
@Override
// 升级数据库时调用
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}
显示效果:
相关文章推荐
- nodejs简单应用四(数据库mysql操作)
- Python 搞搞数据库 简单的SQLite操作
- 简单封装sqlite3 实现实体对象与关系型数据库的相关操作【IOS】
- 【安卓自带数据库SQLite的简单应用】自制账号集APP
- 关于c#数据库的简单应用-datagriview连接数据库及更相关操作
- Android开发—数据库应用—访问数据表(SQLite OpenHelper) —添加检索操作(Retrieve)
- SQLiteDatabase里面的简单操作数据库的方法
- Android自学之sqlite数据的基本操作和事物的简单应用
- python sqlite3 连接到数据库,创建表,INSERT 、SELECT、UPDATE 、DELETE等简单操作
- python orm框架SQLAlchemy简单应用(数据库操作)
- Python 搞搞数据库 简单的SQLite操作前 之矩阵 matrix
- 嵌入式数据库--SQLite简单应用(二)--移植到开发板
- Objective-C ,ios,iphone开发基础:ios数据库(The SQLite Database),使用终端进行简单的数据库操作
- SQLiteDatabase里面的简单操作数据库的方法
- Android SQLite数据库应用之Prepared Statement、事务操作
- Python 搞搞数据库 简单的SQLite操作前 之读取文档 readlines
- Django初级手册1-项目和应用的创建与简单的数据库操作
- iOS上数据库SQLite的简单操作
- 【Win 10 应用开发】Sqlite 数据库的简单用法
- SQlite 数据库的简单操作