ContentValues类详解

ContentValues类和Hashtable比较类似,它也是负责存储一些名值对,但是它存储的名值对当中的名是一个String类型,而值都是基本类型,不能存储对象类型。
我们回顾一下,我们是通过SQL语句进行插入操作,SQL语句的好处是比较直观,但是容易出错。但是在这个例子当中我们有更好的办法,在这里我们将要插入的值都放到一个ContentValues的实例当中
ContentValues initialValues = new ContentValues()语句实例化一个contentValues类。
initialValues.put(KEY_TITLE, title)语句将列名和对应的列值放置到initialValues里边。

mDb.insert(DATABASE_TABLE, null, initialValues)语句负责插入一条新的纪录,如果插入失败会返回-1。

下面是我代码:

public long insertRow(Object data) {//插入行
   long ret = -1;
   if (data != null) {
      ContentValues initialValues = getContentValuesByData(data);
      if (mDBHelper.getWritableDatabase().insert(getTableName(), null,
            initialValues) > 0) {
         ret = 1;
      } else {
         ret = -1;
      }
   }
   return ret;
}
我是在本类中封装了一个方法来获取 ContentValues对象,
getContentValuesByData(data)

你可能感兴趣的:(Android)