您的位置:首页 > 移动开发 > Android开发

android之sqlite简单使用

2015-08-01 00:00 459 查看
摘要: 简单的使用sqlite

1,创建SqLitDBHelper类,继承android.database.sqlite.SQLiteOpenHelper,重载onCreate()

package tools;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
public class SqLitDBHelper extends SQLiteOpenHelper {
public SqLitDBHelper(Context context, String name, CursorFactory factory,
int version) {
super(context, name, factory, version);
// TODO Auto-generated constructor stub

}

@Override
public void onCreate(SQLiteDatabase arg0) {//Called when the database is created for the first time
// TODO Auto-generated method stub
arg0.execSQL("create table userinfo(userId long,userName varchar(25))");
}
@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
// TODO Auto-generated method stub
}
}

2,对数据库进行操作,

package test.activity.sqlite;
import tools.BackgroundMusicPlay;
import tools.SqLitDBHelper;
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;
import android.widget.Toast;
import com.sl.androidgametest.R;
public class MySqliteTest extends Activity implements OnClickListener {
private Button btn_sqlCreat;// 创建数据库
private Button btn_sqlInsert;// 插入数据
private Button btn_sqlUpdate;// 更新数据
private Button btn_sqlQuerry;// 查询数据
SqLitDBHelper dbh;//声明SqLitDBHelper
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_next);
//创建数据库:tsetDb1
dbh= new SqLitDBHelper(MySqliteTest.this, "tsetDb1",null, 1);
btn_sqlCreat = (Button) findViewById(R.id.sqlCreate);
btn_sqlInsert = (Button) findViewById(R.id.sqlInsert);
btn_sqlUpdate = (Button) findViewById(R.id.sqlUpdate);
btn_sqlQuerry = (Button) findViewById(R.id.sqlQuerry);
btn_sqlCreat.setOnClickListener(this);
btn_sqlInsert.setOnClickListener(this);
btn_sqlUpdate.setOnClickListener(this);
btn_sqlQuerry.setOnClickListener(this);
}
@Override
public void onClick(View arg0) {
switch (arg0.getId()) {
case R.id.sqlCreate:
//Create and/or open a database that will be used for reading and writing.
SQLiteDatabase sqldb = dbh.getWritableDatabase();//
System.out.println("create or open database success!");
break;
case R.id.sqlInsert:
ContentValues ctv = new ContentValues(); // 得到ContentValues对象
ctv.put("userId", 1); // 放入键值对,键要与列名一致,值要与列的数据类型一致
ctv.put("userName", "小名"); // 放入键值对,键要与列名一致,值要与列的数据类型一致
SQLiteDatabase sqldb1 = dbh.getWritableDatabase();// 得到一个SQLiteDatabase对象,用于操控数据库
sqldb1.insert("userinfo", null, ctv);// 增加数据库记录
System.out.println("success insert a new content!");
break;
case R.id.sqlUpdate:
ContentValues ctv1 = new ContentValues();
ctv1.put("userName", "小明");
SQLiteDatabase sqldb2 = dbh.getWritableDatabase();// 得到一个SQLiteDatabase对象,用于操控数据库
try {
sqldb2.update("userinfo", ctv1, "userId=?",
new String[] { "1" });// 更新数据库记录
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("success updata the content!");
break;
case R.id.sqlQuerry:
SQLiteDatabase sqldb3 = dbh.getWritableDatabase();// 得到一个SQLiteDatabase对象,用于操控数据库
Cursor cursor;
try {
cursor = sqldb3.query("userinfo", new String[] { "userId",
"userName" }, "userId=?", new String[] { "1" }, null,
null, null);
while (cursor.moveToNext()) { // 打印输出
String name = cursor.getString(cursor
.getColumnIndex("userName"));
System.out.println("query result:-->neme=" + name);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
break;
}
}
}

3,关于SQLiteOpenHelper的其他方法可查看api文档http://tool.oschina.net/apidocs/apidoc?api=android/reference
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: