`
牛仔小包
  • 浏览: 1833 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

ContentValues 的特点

阅读更多
       ContentValues 和HashTable类似都是一种存储的机制 但是两者最大的区别就在于,contenvalues只能存储基本类型的数据,像string,int之类的,不能存储对象这种东西,而HashTable却可以存储对象。

      在忘数据库中插入数据的时候,首先应该有一个ContentValues的对象所以:

ContentValues initialValues = new ContentValues();

initialValues.put(key,values);

SQLiteDataBase sdb ;

sdb.insert(database_name,null,initialValues);

插入成功就返回记录的id否则返回-1;

就可以插入一行数据,详细见下面代码

public Uri insert(Uri uri, ContentValues initialValues) { 
            if (uriMatcher.match(uri) != CONTACTS) { 
                throw new IllegalArgumentException("unknow uri " + uri); 
            } 
            ContentValues values; 
            if (initialValues != null) { 
                values = new ContentValues(initialValues); 
                System.out.println("contentValues插入成功,initailValues不是空的"); 
            } else { 
                values = new ContentValues(); 
            } 
            Long now = Long.valueOf(System.currentTimeMillis()); 
            // 设置默认值 
            if (values.containsKey(ContactColumn.CREATED) == false) { 
                values.put(ContactColumn.CREATED, now); 
            } 
     
            if (values.containsKey(ContactColumn.NAME) == false) { 
                values.put(ContactColumn.NAME, now); 
            } 
     
            if (values.containsKey(ContactColumn.EMAIL) == false) { 
                values.put(ContactColumn.EMAIL, now); 
            } 
     
            if (values.containsKey(ContactColumn.MOBILE) == false) { 
                values.put(ContactColumn.MOBILE, now); 
            } 
     
            if (values.containsKey(ContactColumn.MODIFIED) == false) { 
                values.put(ContactColumn.MODIFIED, now); 
            } 
            System.out.println("应该插入成功了吧"); 
            long RowId = contactsDB.insert(CONTACTS_TABLE, null, values); 
            if (RowId > 0) { 
                Uri noteUri = ContentUris.withAppendedId(CONTENT_URI, RowId); 
                getContext().getContentResolver().notifyChange(noteUri, null); 
                System.out.println("到这里也是没问题的!"); 
                return noteUri; 
            } 
            throw new IllegalArgumentException("unknow uri " + uri); 
        } 
分享到:
评论

相关推荐

    android sqlite数据库资料

    **SQLite的主要特点:** 1. **小巧高效**:SQLite的源代码很小,但功能强大,运行速度快,占用资源少。 2. **跨平台**:SQLite可以在多种操作系统上运行,包括Android、iOS、Windows等。 3. **ACID事务**:SQLite...

    testDb.rar

    SQLite数据库具有轻量级、可嵌入式、无服务器模式等特点,使得它成为移动应用的理想选择。在Android系统中,每个应用程序都可以拥有自己的SQLite数据库,且可以进行基本的CRUD(创建Create、读取Read、更新Update、...

    Android SQLite实现增删查改

    SQLite被广泛应用于移动应用中,因为它具有高效、可靠且易于集成的特点。本教程将深入探讨如何在Android应用中使用SQLite进行数据的增删查改操作,并展示如何结合ListView来展示查询结果。 首先,我们需要创建一个...

    android中使用sqlite.docx

    ContentValues cv = new ContentValues(); cv.put(FIELD_TITLE, title); long rowId = db.insert(TABLE_NAME, null, cv); return rowId; } ``` **6. 删除数据** - **方法**:使用`getWritableDatabase`方法...

    android 中的数据存储

    这三种数据存储方式各有特点,应根据实际需求选择合适的方法。SharedPreferences适合简单配置,File流适用于大文件,而SQLite则适用于结构化数据的复杂操作。在实际应用中,开发者可能需要结合使用这些方法来满足...

    android sqlite的使用方法

    ContentValues values = new ContentValues(); values.put("column1", "value1"); values.put("column2", 123); db.insert("table_name", null, values); ``` 4. 查询数据 - `rawQuery()`方法用于执行SQL查询...

    Android数据库技术.pdf

    SQLite以其轻量级、高效和嵌入式的特点,广泛应用于移动设备,如iPhone和Android手机。本文将重点讨论Android中SQLite数据库的基本操作和相关API。 SQLite在Android中的核心类是`SQLiteDatabase`,它提供了对数据库...

    Android SQLite数据库操作demo

    SQLite数据库因其小巧高效的特点,成为移动设备上理想的本地数据存储解决方案。下面将详细探讨Android中SQLite数据库的基本操作,包括创建数据库、创建表、插入数据、查询数据以及更新和删除数据。 1. **创建数据库...

    android的SQLite数据库基础操作(创建数据库,更新,增删改查)

    SQLite数据库以其高效、可靠和易于集成的特点,成为Android平台首选的本地数据库解决方案。本篇文章将深入探讨如何在Android应用中进行SQLite数据库的基础操作,包括创建数据库、数据更新、插入与删除以及查询。 ##...

    Android基础ContentProvider学习教案.pptx

    **特点:** - **标准化的API:** 提供了一套标准的API用于读取和修改数据。 - **安全性高:** 可以通过权限控制来限制其他应用对数据的访问。 - **灵活性强:** 可以根据需要选择公开哪些数据,以及允许进行哪些操作...

    Android_数据库技术.pdf

    SQLite是一种轻量级的关系型数据库管理系统,因其体积小、性能高、易于移植等特点而被广泛应用于各种设备上,尤其是在移动设备如Android和iOS上有着不可替代的地位。对于Android开发者而言,掌握SQLite的基本使用...

    Android 数据库SQLite.zip

    总结来说,SQLite是Android开发中不可或缺的数据存储工具,其简洁高效的特点使得它成为小型应用存储数据的理想选择。理解并熟练运用SQLite的创建、操作、事务处理以及与其他组件的交互,对于提升Android应用的开发...

    第5章 数据存储.pptx

    ContentValues values = new ContentValues(); values.put("name", "John"); values.put("age", 30); long newRowId = db.insert("users", null, values); ``` - 查询数据: ```java Cursor cursor = db....

    android sqlite

    SQLite具有轻量级、无服务器、零配置等特点,非常适合移动设备上的应用开发。 #### 1.2 Android中的SQLite 在Android中,SQLite是默认支持的数据库解决方案之一。Android提供了一个名为`SQLiteOpenHelper`的抽象类...

    Android创建和使用数据库详细指南.zip

    SQLite是一个开源的数据库系统,它的特点是不需要独立的服务器进程,可以直接在客户端应用程序中运行。在Android中,SQLite数据库被广泛用于存储应用数据,如用户设置、应用状态等。由于其小巧高效,特别适合移动...

    SQLiteDatabase增删改查示例代码

    在Android开发中,SQLite数据库是应用内存储数据的常用方式,尤其对于轻量级的数据管理,SQLite具有高效、本地化和灵活的特点。本示例主要关注`SQLiteDatabase`的增删改查操作,并且对比了Android自带的SQLite API与...

    android中sqlite的使用

    SQLite是一种嵌入式的数据库引擎,具有体积小、速度快、使用简单的特点,适用于移动设备。Android系统内置了SQLite,并提供了一系列API来方便开发者进行数据库操作。 #### 二、创建SQLite数据库 为了在Android中...

    android笔试题

    选项B正确,而A、C、D描述的是DOM解析器的特点。 7. **Menu操作**:在Android中,可能需要重写的方法有`onCreateOptionsMenu()`和`onOptionsItemSelected()`来创建和响应菜单项。 8. **SQLiteOpenHelper**:使用此...

Global site tag (gtag.js) - Google Analytics