版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、北京传智播客教育,北京传智播客教育,使用SQLiteDatabase操作SQLite数据库,SQLiteDatabase的rawQuery()用于执行select语句,使用例子如下:SQLiteDatabasedb=.;Cursorcursor=db.rawQuery(“select*fromperson”,null);while(cursor.moveToNext()intpersonid=cursor.getInt(0);/获取第一列的值,第一列的索引从0开始Stringname=cursor.getString(1);/获取第二列的值intage=cursor.getInt(2);/获取
2、第三列的值cursor.close();db.close();rawQuery()方法的第一个参数为select语句;第二个参数为select语句中占位符参数的值,如果select语句没有使用占位符,该参数可以设置为null。带占位符参数的select语句使用例子如下:Cursorcursor=db.rawQuery(select*frompersonwherenamelike?andage=?,newString%传智%,4);Cursor是结果集游标,用于对结果集进行随机访问,如果大家熟悉jdbc,其实Cursor与JDBC中的ResultSet作用很相似。使用moveToNext()方法
3、可以将游标从当前行移动到下一行,如果已经移过了结果集的最后一行,返回结果为false,否则为true。另外Cursor还有常用的moveToPrevious()方法(用于将游标从当前行移动到上一行,如果已经移过了结果集的第一行,返回值为false,否则为true)、moveToFirst()方法(用于将游标移动到结果集的第一行,如果结果集为空,返回值为false,否则为true)和moveToLast()方法(用于将游标移动到结果集的最后一行,如果结果集为空,返回值为false,否则为true)。,北京传智播客教育,北京传智播客教育,使用SQLiteDatabase操作SQLite数据库,除了
4、前面给大家介绍的execSQL()和rawQuery()方法,SQLiteDatabase还专门提供了对应于添加、删除、更新、查询的操作方法:insert()、delete()、update()和query()。这些方法实际上是给那些不太了解SQL语法的菜鸟使用的,对于熟悉SQL语法的程序员而言,直接使用execSQL()和rawQuery()方法执行SQL语句就能完成数据的添加、删除、更新、查询操作。Insert()方法用于添加数据,各个字段的数据使用ContentValues进行存放。ContentValues类似于MAP,相对于MAP,它提供了存取数据对应的put(Stringkey,X
5、xxvalue)和getAsXxx(Stringkey)方法,key为字段名称,value为字段值,Xxx指的是各种常用的数据类型,如:String、Integer等。SQLiteDatabasedb=databaseHelper.getWritableDatabase();ContentValuesvalues=newContentValues();values.put(name,传智播客);values.put(age,4);longrowid=db.insert(“person”,null,values);/返回新添记录的行号,与主键id无关不管第三个参数是否包含数据,执行Insert(
6、)方法必然会添加一条记录,如果第三个参数为空,会添加一条除主键之外其他字段值为Null的记录。Insert()方法内部实际上通过构造insert语句完成数据的添加,Insert()方法的第二个参数用于指定空值字段的名称,相信大家对此参数会感到疑惑,此参数的作用是干嘛的?是这样的:如果第三个参数values为Null或者元素个数为0,Insert()方法必然要添加一条除了主键之外其它字段为Null值的记录,为了满足这条insert语句的语法,insert语句必须给定一个字段名,如:insertintoperson(name)values(NULL),倘若不给定字段名,insert语句就成了这样:
7、insertintoperson()values(),显然这不满足标准SQL的语法。对于字段名,建议使用主键之外的字段,如果使用了INTEGER类型的主键字段,执行类似insertintoperson(personid)values(NULL)的insert语句后,该主键字段值也不会为NULL。如果第三个参数values不为Null并且元素的个数大于0,可以把第二个参数设置为null。,北京传智播客教育,北京传智播客教育,使用SQLiteDatabase操作SQLite数据库,delete()方法的使用:SQLiteDatabasedb=databaseHelper.getWritableDa
8、tabase();db.delete(person,personid?,newString2);db.close();上面代码用于从person表中删除personid小于2的记录。update()方法的使用:SQLiteDatabasedb=databaseHelper.getWritableDatabase();ContentValuesvalues=newContentValues();values.put(“name”,“传智播客”);/key为字段名,value为值db.update(person,values,personid=?,newString1);db.close();上面
9、代码用于把person表中personid等于1的记录的name字段的值改为“传智播客”。,http:/www.anzhuo.cc/安卓手机论坛,北京传智播客教育,北京传智播客教育,使用SQLiteDatabase操作SQLite数据库,query()方法实际上是把select语句拆分成了若干个组成部分,然后作为方法的输入参数:SQLiteDatabasedb=databaseHelper.getWritableDatabase();Cursorcursor=db.query(person,newStringpersonid,name,age,namelike?,newString%传智%,n
10、ull,null,personiddesc,1,2);while(cursor.moveToNext()intpersonid=cursor.getInt(0);/获取第一列的值,第一列的索引从0开始Stringname=cursor.getString(1);/获取第二列的值intage=cursor.getInt(2);/获取第三列的值cursor.close();db.close();上面代码用于从person表中查找name字段含有“传智”的记录,匹配的记录按personid降序排序,对排序后的结果略过第一条记录,只获取2条记录。query(table,columns,selectio
11、n,selectionArgs,groupBy,having,orderBy,limit)方法各参数的含义:table:表名。相当于select语句from关键字后面的部分。如果是多表联合查询,可以用逗号将两个表名分开。columns:要查询出来的列名。相当于select语句select关键字后面的部分。selection:查询条件子句,相当于select语句where关键字后面的部分,在条件子句允许使用占位符“?”selectionArgs:对应于selection语句中占位符的值,值在数组中的位置与占位符在语句中的位置必须一致,否则就会有异常。groupBy:相当于select语句grou
12、pby关键字后面的部分having:相当于select语句having关键字后面的部分orderBy:相当于select语句orderby关键字后面的部分,如:personiddesc,ageasc;limit:指定偏移量和获取的记录数,相当于select语句limit关键字后面的部分。,游戏策划,本游戏属于体育类游戏,下面将会从游戏情节、呈现技术、操作方式等几个方面来对游戏进行初步的策划。游戏情节。体育类游戏主要以模拟现实世界的竞技活动为主,所以对于游戏情节的设计并不十分重视。因此这部分工作就主要集中在如何策划游戏的进程,设计游戏的不同场景等内容上。目标平台。本游戏的目标平台为Android2.1。呈现技术。本游戏为2D平
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026山东德州市宁津县招聘教师23人备考题库(易错题)附答案详解
- 中国人民解放军第五七一八工厂 2026届校园招聘备考题库附答案详解(基础题)
- 2026河南安阳高新区就业见习单位及就业见习岗位招募备考题库及答案详解【夺冠系列】
- 2026贵州峰鑫建设投资(集团)有限公司招聘演艺人员2人备考题库及参考答案详解(综合卷)
- 2026浙江丽水市松阳县国盛人力资源有限公司招聘专职消防员3人备考题库及参考答案详解(培优b卷)
- 2026福建龙岩市投资开发集团有限公司招聘1人备考题库含答案详解【模拟题】
- 2026上半年四川成都大学考核招聘高层次人才5人备考题库及完整答案详解(各地真题)
- 2026广东佛山三水区白坭镇岗头中心幼儿园春季招聘1人备考题库带答案详解(夺分金卷)
- 2026渤海银行昆明分行社会招聘备考题库带答案详解(培优b卷)
- 电极丝制造工岗前核心技能考核试卷含答案
- 中国艺术研究院社会招聘试题
- 2026年教育局思想政治工作科工作计划
- 2025年安徽卫生健康职业学院单招职业适应性测试试题及答案解析
- 医保村卫生室管理制度
- 陕西从优 秀村干部中考录乡镇公务员考试真题
- 2025年军事设施建设与管理规范
- 儿科学营养性vitD缺乏
- “党的二十届四中全会精神”专题题库及答案
- 厂房基础注浆加固施工方案
- 人工智能技术应用规范
- 无锡银税协议书
评论
0/150
提交评论