如何使用EOS多索引表

下面是多索引表的使用指南。为了深入和清晰的了解多索引表,最终的.cpp文件部分将被进一步详细讨论和讨论。注意,完整的.cpp文件可以在页面的底部找到。

attachments-2018-03-9MDlTgOS5aa74ab46b850.png

作者:geek12345

来源:开源中国

原来链接:http://t.cn/EGzDy9e

本文约3200字+,阅读(观看)需要18分钟

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

下面是多索引表的使用指南。

为了深入和清晰的了解多索引表,最终的.cpp文件部分将被进一步详细讨论和讨论。注意,完整的.cpp文件可以在页面的底部找到。

词汇表

  • code :是指已公布智能合约的account_name。
  • scope:account_name所涉及数据范围。
  • table_name: 存储在内存中的表的名称。

代码分解

要存储的结构

要在多索引表中存储的数据是limit_order结构。primary_key(),get_expiration(),get_price()函数用于返回表。返回的表将根据调用的函数排序。

3bdcc7c3fdc542e8aacb0f31ec605972


建一个多索引表

23839ee780c74426a17fbccf4c5c4745


payer是保存帐户的变量,它将账单元素添加到多索引表中,并修改已经在多索引表中的元素。

8f4afaa56b544be3b8dcbcf61f87ae1d


N(orders)是多索引表的名称,limit_order是要存储在表中的数据。

e97505091769496f9c39539f9ce675bc


indexed_by< N( byexp ), const_mem_fun< limit_order, uint64_t, &limit_order::get_expiration> >定义了多索引表的索引方式。N(byexp)是这个索引的名称。const_mem_fun表示正在查询的数据类型、limit_order的变量的类型是uint64_t,将使用get_expiration函数获取变量。

068b7fa2237a4a8d84f3f6006cb5708e


indexed_by< N( byprice ), const_mem_fun< limit_order, uint128_t, &limit_order::get_price> >定义了多索引表的索引方式。N(byprice)是这个索引的名称。const_mem_fun表示正在查询的数据类型、limit_order的变量的类型是uint128_t,将使用get_price函数获取变量。

45893e6eb6a141e49041a4f20ab610f4


orders即是多索引表。

a963f4f235b84ebcb1b4621025ab8bae


添加多索引表

下面,将两个limit_order添加到orders表中。请注意,payer是正在修改orders表的“账单”帐户。

344ee2d9fab34253b4c0dc04d04385fc


按照主键排序

默认的orders表按照主键排序。

fa98979d2fd44c9d889bb1e1d72d3e46


按第二索引expiration排序

orders表通过expiration进行排序并分配给expidx。

d972f99db11d41a8a93d4dd5878b6e81


按第二索引price排序

orders表通过price进行排序并分配给oridx。

57df7341abb64447a95132c2c4b005dc


修改一个输入值

下面,“ID=2”的条目被修改。请注意,payer是正在修改orders表的“账单”帐户。

318cbae5575449349e1586cae93e2233


得到一个最小值

908c6ae02a2f4ddc9fdb7b653e88df2d


完整的.cpp文件

7c670eb8fc7c4e6c80a78b515e566599


dd195937651745fea2d19272a94ec254


547dbe76c48b4c00a7be53da35a04627

删除表

表不能直接删除,但是,在删除所有行之后,表将自动删除。

文章发布只为分享区块链技术内容,版权归原作者所有,观点仅代表作者本人,绝不代表区块链兄弟赞同其观点或证实其描述。

attachments-2018-02-kL1zBfXx5a7ffd0b78798.jpg


你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
不写代码的码农
社区运营-小以

626 篇文章

作家榜 »

  1. 社区运营-小以 626 文章
  2. 社区运营-小链 243 文章
  3. 涂晶 81 文章
  4. 于中阳Mercina-zy 79 文章
  5. 李晓琼 44 文章
  6. 兄弟连区块链培训 42 文章
  7. 吴寿鹤 36 文章
  8. John-smith 25 文章