增删改查 模板java_数据库增删改查模板 - hlxxjava的个人空间 - OSCHINA - 中文开源技术交流社区...

import java.util.ArrayList;

import java.util.List;

import android.content.ContentValues;

import android.content.Context;

import android.database.Cursor;

import android.database.sqlite.SQLiteDatabase;

import com.template.studentinfosystem.db.StudentDBOpenHelper;

import com.template.studentinfosystem.domain.Student;

/**

* 学生信息数据库的dao( data access objcet)

* 增删改查

*/

public class StudentDao {

private StudentDBOpenHelper helper;

/**

* 只有一个有参的构造方法,要求必须传入上下文

* @param context

*/

public StudentDao(Context context) {

helper = new StudentDBOpenHelper(context);

}

/**

* 添加一个学生

* @param name 姓名

* @param sex 性别,male female

* @return result 添加到数据库的那一行, -1添加失败

*/

public long add(String name,String sex){

SQLiteDatabase db = helper.getWritableDatabase();

//db.execSQL("insert into student (name,sex) values (?,?)", new Object[]{name,sex});

ContentValues values =new ContentValues();

values.put("name", name);

values.put("sex", sex);

long result = db.insert("student", null, values); //组拼sql语句实现的.带返回值

db.close();//释放资源

return result;

}

/**

* 删除一个学生

* @param name 姓名

* @return result 删除了几行 0 代表删除失败

*/

public int delete(String name){

SQLiteDatabase db = helper.getWritableDatabase();

//db.execSQL("delete from student where name=?",new Object[]{name});

int result = db.delete("student", "name=?", new String[]{name});

db.close();//释放资源

return result;

}

/**

* 修改一个学生的性别

* @param name 姓名

* @param newsex 新的性别

* @return 更新了几行 0更新失败

*/

public int update(String name,String newsex){

SQLiteDatabase db = helper.getWritableDatabase();

//db.execSQL("update student set sex =? where name=?",new Object[]{newsex,name});

ContentValues values = new ContentValues();

values.put("sex", newsex);

int result = db.update("student", values, "name=?", new String[]{name});

db.close();//释放资源

return result;

}

/**

* 查询学生的性别

* @param name 学生的姓名

* @return 学生性别 null代表学生不存在

*/

public String find(String name){

String sex = null;

SQLiteDatabase db = helper.getReadableDatabase();

//结果集 游标

//Cursor cursor = db.rawQuery("select sex from student where name=?", new String[]{name});

Cursor cursor = db.query("student", new String[]{"sex"}, "name=?", new String[]{name}, null, null, null);

boolean result = cursor.moveToNext();

if(result){

sex = cursor.getString(0);

}

cursor.close();//释放资源

db.close();

return sex;

}

/**

* 获取全部的学生信息

* @return

*/

public List findAll(){

List students =new ArrayList();

SQLiteDatabase db = helper.getReadableDatabase();

//Cursor cursor = db.rawQuery("select name, sex from student", null);

Cursor cursor = db.query("student", new String[]{"name","sex"}, null, null, null, null, null);

while(cursor.moveToNext()){

String name = cursor.getString(0);

String sex = cursor.getString(1);

Student student = new Student();

student.setName(name);

student.setSex(sex);

students.add(student);

}

cursor.close();

db.close();

return students;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值