首页 > 数据库技术 > 详细

通过API函数来控制SQList数据库增删改查

时间:2015-10-21 19:06:12      阅读:309      评论:0      收藏:0      [点我收藏+]

package com.xh.tx.dao;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.util.Log;

import com.xh.tx.bean.Person;
import com.xh.tx.utils.MySQLLiteHelper;

public class PersonDao1
{
private static final String TAG = "PersonDao1";
private MySQLLiteHelper helper;

  public PersonDao1(Context context)
  {
    helper = new MySQLLiteHelper(context, null, null, 1);
  }

  public void savePerson(Person p)
  {
    SQLiteDatabase db = helper.getWritableDatabase();
    if(db.isOpen())
    {
      //nullColumnHack 如果数据库里面的name字段设计的时候不允许为空,但是你传递过来的参数是空
      // 如果不设置这个nullColumnHack参数那么就会报错
      // 如果你设置nullColumnHack这个参数的值为name那么不会报错
      ContentValues values = new ContentValues();
      values.put("name", p.getName());
      values.put("age", p.getAge());
      Long id = db.insert("person", null, values);
      Log.d(TAG, "================:" + id);
      db.close();
    }
  }
  public void deletePerson(Integer id)
  {
    SQLiteDatabase db = helper.getWritableDatabase();
    if(db.isOpen())
    {
      //select * from person where id=? and name = ?;
      String whereClause = "_id=?";
      String[] whereArgs = new String[]{String.valueOf(id)};
      int _id = db.delete("person", whereClause, whereArgs);
      Log.d(TAG, "================:" + _id);
      db.close();
    }
  }
  public void updatePerson(Person p)
  {
    SQLiteDatabase db = helper.getWritableDatabase();
    if(db.isOpen())
    {
      ContentValues values = new ContentValues();
      values.put("name", "xintx");
      values.put("age", "2");
      String whereClause = "_id=?";
      String[] whereArgs = new String[]{String.valueOf(p.get_id())};
      db.update("peson", values, whereClause, whereArgs);
      db.close();
    }
  }
  public void queryItem(Integer id)
  {
    SQLiteDatabase db = helper.getWritableDatabase();
    if(db.isOpen())
    {
      String[] columns = new String[]{"_id","name","age"};
      String selection = "_id=?";
      String[] selectionArgs = new String[]{String.valueOf(id)};
      String groupBy = null; //按什么什么分组
      String having = null; //如果select里面包含了组函数的时候,不能用where去查询 就只有用having
      String orderBy = null; //按什么排序 order by id desc;

      Cursor cursor = db.query("person", columns, selection, selectionArgs, groupBy, having, orderBy);
      if(null != cursor && cursor.moveToFirst())
      {
        Integer _id = cursor.getInt(0);
        String name = cursor.getString(1);
        Integer age = cursor.getInt(2);
        Log.d(TAG, "_id=" + _id + " name=" + name + " age = " + age);
        db.close();
      }
    }
  }
}

通过API函数来控制SQList数据库增删改查

原文:http://www.cnblogs.com/zzw1994/p/4898634.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!