版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011240016/article/details/84038186
学习自官方文档。
第一步: 新建一个文件夹
mkdir addressbook
cd addressbook
第二步:创建CPP文件
touch addressbook.cpp
第三步:合约基本框架
#include <eosiolib/eosio.hpp>
using namespace eosio;
class [[eosio::contract]] address : public eosio::contract {
public:
private:
};
第四步:创建表的数据结构
这里定义的是通过C++代码操作数据的对象。
struct person
{
name key;
string first_name;
string last_name;
string street;
string city;
string state;
// 定义一个外键
uint64_t primary_key() const { return key.value; }
};
第五步:配置Multi-Index表
首先我们需要知道,什么是multi_index
。简单来说,multi_index
是eosio
上面的数据库管理接口,通过eosio::multi_index
智能合约可以写入、读取和修改eosio
数据库的数据。
且eosio::multi_index
来源于boost
库的boost::multi_index
。
multi_index
和传统数据库中的表类似,rows
是独立对象,一般为类对象或者结构体对象,而columns
则是对象的成员属性。
另外,multi_index
提供与传统数据库类似的key
成员属性,用于快速查找对象。也支持主键primary key
,但是,必须是唯一的无符号64位整型数uint64_t
。
更多特性这里不做展开。
如何创建multi_index表
–未完待续–
参考链接:
https://developers.eos.io/eosio-home/docs/data-persistence
https://blog.csdn.net/hhye_l/article/details/80602196