2.3.3 创建一个表
数据库创建后,下一步就是创建一个可以存储数据的表。表的设计类似于一个纲要(schema )。数据库表纲要(schema )的设计是个复杂的题目,详细情况我们在第五章会讨论。
在这个例子中,只是为数据库文件添加了一个单独的表。歌曲是以原始的二进制格式BLOB 存储在数据库中的。歌曲表设计请见表2.1 。
表2.1 歌曲表设计
名称 | 数据类型 |
Id | INTEGER |
Title | TEXT |
artist | TEXT |
Song | BLOB |
RsqlDatabase:: Exec() 函数用来执行无返回值的操作(如,增、删、改)。这个函数的使用如下:
2.3.4 创建一个索引
建立索引的目的是提高查询的速度。在这个例子中,索引是用来检索(retrieve )歌曲表的数据条目(entry )。索引的深入细节,包括使用时的建议,在以后的章节中将被提及。
索引的创建也是用RsqlDatabase:: Exec() 来完成,代码如下:
2.3.5 插入一条记录
用SQL INSERT 语句(statement )向表中添加三条记录,也是使用RsqlDatabase:: Exec() 函数,代码如下:
需要注意的是,插入操作被放到了事务(transaction )中,在开始的时候BEGIN ,在结束的时候COMMIT 。在执行多条连续的SQL 语句时,推荐使用事务。这是因为事务持续一个操作数据库的状态,直到COMMIT 操作执行,这提高了大批量插入数据的性能。第四章中将详细介绍事务。COMMIT 操作完成,数据就存入到了数据库文件中。