【嵌入式】android应用程序开发.doc
上传人:qw****27 上传时间:2024-09-12 格式:DOC 页数:15 大小:171KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

【嵌入式】android应用程序开发.doc

【嵌入式】android应用程序开发.doc

预览

免费试读已结束,剩余 5 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

《嵌入式相关资料》函数。onCreate()函数在数据库第一次建立时被调用,一般用来创建数据库中的表,并完成初始化工作。在代码第11行中,通过调用SQLiteDatabase实例的execSQL()方法,执行创建表的SQL命令。onUpgrade()函数在数据库需要升级时被调用,一般用来删除旧的数据库表,并将数据库转移到新的版本的数据库表中。在代码的16行和17行中,为了简单起见,并没有做任何数据转移,而仅仅删除原有的表后建立新的数据表。程序开发人员不应直接调用onCreate()和onUpgrade()函数,而应由SQLiteOpenHelper类来决定何时调用这两个函数。SQLiteOpenHelper类的getWritableDatebase()函数getReadableDatabase()函数是可以直接调用的函数。getWritableDatebase()函数用来建立或打开可读写的数据库实例,一旦函数调用成功,数据库实例将被缓存,在需要使用数据库实例时就可以调用这个方法获取数据库实例,务必在不使用时调用close()函数关闭数据库。如果保存数据库文件的磁盘空间已满,调用getWritableDatebase()函数则无法获得可读写的数据库实例,这是可以调用getReadableDatabase()函数,获得一个只读的数据库实例。当然,如果程序开发人员不希望使用SQLiteOpenHelper类,也可以直接使用SQL命令建立数据库。首先调用openOrCreateDatabase函数创建数据库实例,然后调用execSQL()函数执行SQL命令,完成数据库和数据表的建立过程,其示例代码如下。1privatestaticfinalStringDB-CREATE=〝createtable〞+2DB-CREATE+〝(〝KEY-ID+〞integerprimarykeyautoincremant,+3〝KEY-NAME+〞textnotnull,〝+KEY-AGE+〞integer,〝+KEY=HEIGHT+〞float);〞;4publicvoidcreat(){5db.openOrcreateDatabase(DB-NAME,context.MODE-PRIVATE,null)6db.execSQL(DB-CREATE);7}8.3.4数据操作数据操作指的是对数据的添加、删除、查找和更新操作,虽然程序开发人员完全可以通过执行SQL命令名完成数据操作,但这里任然推荐使用Android提供的专用类和方法,这些类和方法的使用更加简洁、方便。为了使DBAdapter类支持数据添加、删除、更新和查找等新功能,在DBAdapter类中增加下面的函数。其中,insert(Peoplepeople)用来添加一条数据,queryAllData()用来获取全部数据,queryOneData(longid)根据id获取一条数据,deleteAllData()用来删除全部数据,deleteOneData(longid)根据id删除一条数据,updateOneData(longid,Peoplepeople)根据id更新一条数据。1publicclassDBAdapter{2publiclonginsert(Peoplepeople){}3publiclongdeleteAllData(){}4publiclongdeleteOneData(longid){}5publicpeople[]queryAllData(){}6publicpeople[]queryOneData(longid){}7publiclongupdateOneData(longid,Peoplepeople){}8privatepeople[]ConvertoPeople(Cursorcursor){}}ConvertoPeople(Cursorcursor)是私有函数,作用是将查询结果转换为自定义的People类实例。People类包含4个公共属性,分别为ID、Name、Age和Height,对应数据库中的4个属性值。重载toString()函数,主要是便于界面显示的需要。People的代码如下。1publicclassPeople{2publicintID=-1;3publicStingName;4publicintAge;5publicfloateHeight;6@OverridePublicStingtoString(){Stingresult=〝〞;result+=〝ID:〞+this.ID+〝,〞;result+=〝姓名:〞this.Name+〝,〞;result+=〝年龄:〞+this.Ag