学习自官方文档。

第一步: 新建一个文件夹

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_indexeosio上面的数据库管理接口,通过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

【EOS】2.4 EOS数据存储相关推荐

  1. EOS智能合约授权限制和数据存储

    EOS智能合约授权限制和数据存储 在EOS合约中,调用合约需要来自账户的授权,同时还要指定需要调用的动作.当然,有的合约并不是所有账户都可以调用的,这就需要用到授权限制.接下来我们就来看看如何限制合约 ...

  2. 从EOS 主网同步数据

    从EOS 主网同步数据 从EOS 主网同步数据 编译源代码 同步源代码 编译源代码 编辑 config.ini 运行和加载 genesis.json genesis.jon 的内容: 核实是否已经开始 ...

  3. 全面理解EOS——2.加入EOS主网和测试网

    有了EOSIO软件,如何加入EOS的主网及测试网络?不同步EOS主网和测试网络全部数据,如何快速与EOS主网及测试网交互?如果想获得EOS主网及测试网络上所有的块信息,又该如何? 在线查看EOS网络信 ...

  4. 英特尔 QLC 3D NAND 数据存储

    英特尔 QLC 3D NAND 数据存储 NAND是什么 由于SSD固态硬盘的普及,NAND这个词逐渐进入用户们的视线.许多厂商都在产品宣传中提到3D NAND颗粒等词汇,对于普通用户来讲,完全不知道 ...

  5. Android的数据存储方式

    1.Shared Preferences 2.文件存储数据 3.数据库 4.Content Provider存储数据,是所有应用程序之间数据存储和检索的一个桥梁,它的作用就是使得各个应用程序之间实现数 ...

  6. mysql更改数据库数据存储目录_MySQL更改数据库数据存储目录

    MySQL数据库默认的数据库文件位于/var/lib/mysql下,有时候由于存储规划等原因,需要更改MySQL数据库的数据存储目录.下文总结整理了实践过程的操作步骤. 1:确认MySQL数据库存储目 ...

  7. AS3.0编程 So本地数据存储(“超级cookies”)--AS3:Local SharedObject

    Flash影片运行过程中,大多数的数据都存储于影片本身,一旦影片被关闭,这些数据也就从内存中被清除掉,下次运行时,数据将从头开始.若想存储数据或者让客户端的多个影片共享同一组数据,就要想办法把数据存储 ...

  8. Java中数据存储方式

    2019独角兽企业重金招聘Python工程师标准>>> 1. 寄存器(register).这是最快的存储区,因为它位于不同于其他存储区的地方--处理器内部.但是寄存器的数量极其有限, ...

  9. IOS数据存储之文件沙盒存储

    前言: 之前学习了数据存储的NSUserDefaults,归档和解档,对于项目开发中如果要存储一些文件,比如图片,音频,视频等文件的时候就需要用到文件存储了.文件沙盒存储主要存储非机密数据,大的数据. ...

  10. 华为云大数据存储的冗余方式是三副本_大数据入门:HDFS数据副本存放策略

    大数据处理当中,数据储存始终是一个重要的环节,从现阶段的市场现状来说,以Hadoop为首的大数据技术框架,仍然占据主流地位,而Hadoop的HDFS,在数据存储方面,仍然得到重用.今天的大数据入门分享 ...

最新文章

  1. android框架连接mysql_Android:ROOM数据库框架
  2. java在线编程题_阿里笔试题(2017在线编程题)-- 数串分组 --Java实现
  3. itoa函数的递归实现(二级指针实现)
  4. 关于深度学习中GPU显存使用的介绍
  5. iOS安全攻防(十七):Fishhook
  6. golang 二维切片
  7. Intel Realsense D435 开始运行启动时报错:RuntimeError: Couldn't resolve requests 原因及解决办法
  8. 函数_月隐学python第9课
  9. 为什么基于数字的技术公司进行机器人研究
  10. Visual Studio 2022 Preview 3和2019 16.11发布
  11. android中给TextView或者Button的文字添加阴影效果
  12. ATK插件化开发:AtkPlug,AtkSocket
  13. Hibernate之session的管理方式
  14. Ubuntu source list
  15. iptv鉴权 php,[转]关于openwrt用于dhcp客户端协议突破iptv的dhcp+鉴权(ipoe)
  16. 条件数、奇异值与海森矩阵
  17. Namesilo域名解析详细图文教程!
  18. 多线程设计模式-主仆模式
  19. css实现跳动的心形图案
  20. 最新交易猫源码+独立后台管理

热门文章

  1. LabView学习笔记(十):条件结构
  2. flash相册制作软件模板_儿童照片相册模板 怎么制作炫酷视频相册
  3. php和python_c语言,python和c语言的主要区别
  4. numactl mysql_CentOS学习笔记 - 10. 开发机mysql安装
  5. java画板代码_java 画板画图程序
  6. 恢复初始快捷键_如何将Windows10系统还原初始状态
  7. 获取bootgrid选中行数据_Easyui 取得选中行数据_EasyUI 教程
  8. pycharm背景图片的设置
  9. easypanel安装php5.4,kangle一键脚本-凌梦云
  10. C Hello World程序