一、基础知识
基本数据类型
宏TYPE_DESCRIPTOR
REGISTER(name)
游标Cursor
二、例子说明
1)基础知识——基本数据类型
下面的C++类型可以作为FastDB的原子类型。
2)基础知识——REGISTER(name)
数据库中的每个C++类或者结构,都应该包含一个特殊的方法来描述它的域。这个方法就是宏TYPE_DESCRIPTOR(field_list)。如果想为类定义一些方法,使其在数据库中可以使用,那么应该使用宏CLASS_DESCRIPTOR(name, field_list)。其中(field_list)是类域描述的一个清单,主要包括:
KEY(name, index_type) | 索引域。index_type可以是HASHED或者INDEXED。 HASHED——用该域为该表建立一个哈希表; INDEXED——用该域为该表建立一个T-tree结构。 |
RELATION(reference, inverse_reference) | 指定类之间的一对一、一对多和多对多的关系 |
FIELD(name) | 指定name的域没有索引 |
3)基础知识——宏DESCRIPTOR和游标
建立C++类与数据库中表的对应关系。它应该在实现中使用,而不是头文件中。如果一个应用中要使用多个数据库,那么应该使用宏REGISTER(name,database),参数database应该是一个指向dbDatabase对象的指针。
游标Cursor:访问选择操作的记录。FastDB中的两种游标:只读readonly(默认)和可更新的update。