Android应用开发入门(基于Android Studio开发环境、任务驱动式) 第2版 课件 6-3 任务六 贪吃蛇游戏的设计与实现-子任务3.pptx
子任务3:TopTen功能;项目流程;SQLite数据库;SQLite是一款轻量级的数据库,设计SQLite的初衷就满足是嵌入式产品的需求,由于嵌入式产品的资源有限,所以要求数据库占用资源非常低。
SQLite做到了这一点,它是目前嵌入式设备中较常见的数据库之一,只需要占用很少的内存,另外SQLite支持SQL语句。
Android为每个应用程序都安排了固定的数据库存放目录,即应用程序所在目录(/data/data/包名)下的databases目录。;首先打开AndroidStudio的Terminal窗口,输入adbshell命令。
如果输入该命令后,键入回车出现如下的错误提示,请先运行Android虚拟机:
C:\code\new\SnakeGameadbshell
error:nodevices/emulatorsfound
Android虚拟机运行正常后,再次输入命令会提示成功登录:
C:\code\new\SnakeGameadbshell
generic_x86:/$
;切换到管理员:
2|generic_x86:/$su
generic_x86:/#
跳转到APP的目录:
generic_x86:/#cd/data/data/com.example.administrator.test
打开数据库“testdb”:
generic_x86:/data/data/com.example.administrator.test#sqlite3testdb
SQLiteversion3.22.02018-01-2218:45:57
Enter.helpforusagehints.
sqlite
;创建数据表table_test
sqlitecreatetabletable_test(idINTEGERNOTNULLPRIMARYKEY,nameTEXT);
插入两条记录
sqliteinsertintotable_testvalues(null,tom);
sqliteinsertintotable_testvalues(null,jack);
查询记录
sqliteselect*fromtable_test;
1|tom
2|jack
更新记录
sqliteupdatetable_testsetname=joviwherename=jack;
删除记录
sqlitedeletefromtable_testwhereid=1;;查询数据库中所有的数据表
sqlite.tables
table_test
查看某张表格的创建语句
sqlite.schematable_test
CREATETABLEtable_test(idINTEGERNOTNULLPRIMARYKEY,nameTEXT);
退出SQLite环境
sqlite.exit;SQLiteOpenHelper和SQLiteDatabase;通过SQL语句可以手动操作SQLite数据库,但是程序员是需要编写代码来操作数据库的,Android为我们提供了SQLiteOpenHelper类和SQLiteDatabase类。
SQLiteOpenHelper是一个抽象类,来管理数据库的创建和版本的升级(onCreate和onUpgrade),操作数据库需要继承自该类。
SQLiteDatabase类就是用来操作数据库的类。;;方法;方法;方法;方法;方法;方法;方法;方法;方法;方法;Cursor游标;Cursor类似于一个指针,指向返回的数据集,我们可以将数据集想象为一张表,通过Cursor的移动可以访问表格中的上一行或者下一行,定位到某一行后可以获取某列的数据。;方法;方法;使用范例;使用范例;主界面布局;
ListView每一项的布局;
增加学生对话框布局;
更新学生对话框布局。
;创建一个类StudentOpenHelper,该类继承自SQLiteOpenHelper;
重写onCreate和onUpgrade方法。
;为组件声明成员变量;
数据库对象;
用于ListView组件绑定数据的对象。
;设计了一个updateListView方法,该方法将查询数据表获得所有数据,显示到ListView上;
完成MainActivity类的onCreate方法,打开数据库进行数据显示。
;监听【Add】按钮,弹出对话框,点击【确定】后,根据对话框的信息插入数据;
监听【Delete】按钮,弹出对话框,点击【确定】后,根据对话框的信息删除数据;
监听【Update】按钮,弹出对话框,点击【确定】后,根据对话框的信息更新数据。