【许晓笛】EOS 数据库与持久化 API —— 实战
EOS 数据库开发实战 上次的文章详细讲解了 EOS 数据库的架构,本文将以官方示例为基础,详解 EOS 数据库的开发实战。 基本步骤 在智能合约里与 EOS 数据库交互,首先要定义存储的数据: 定义对象:具体就是定义一个 C++ 类或者 C++ 结构体,数据表就由一个个对象组成。 定义主键:在刚才的类/结构体中,定义一个const类型的成员函数primary_key(),返回值必须为uint64_t类型,返回值即为主键。 定义索引:EOS 数据表不光可以按照主键搜索数据,还可以定义多达 16 种索引。而且索引键(Key)不止支持64位无符号整数,还支持 128、256位整数以及双精度、四精度浮点数。 为每个索引定义 键提取器(key extractor)。 存储数据定义好之后,就可以与数据库交互了: 建立数据表:实例化 multi_index,建立数据表。 增删数据:使用emplace方法在表中添加数据;使用erace方法删除数据。 修改数据:使用modify方法修改数据。 查询数据:使用get、find方法和其他迭代器操作查询数据。 需求分析 我们参考 EOS 的官方示例,建立一个...