首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将小型数据库、可编辑的数据存储在smart契约可访问的区块链上?

如何将小型数据库、可编辑的数据存储在smart契约可访问的区块链上?
EN

Ethereum用户
提问于 2017-08-29 14:37:13
回答 1查看 3.8K关注 0票数 2

新的区块链和智能合同。一直在做研究,我意识到我不能更新我的交易智能合同。是否可以将数据库数据存储为分类帐的一个条目,或者在只有我更新的事务智能契约中才能访问以获取数据的另一个智能契约中?

例如

用户希望向组织捐款。他的钱包需要吸引所有可能的组织,让他从我希望分散的数据库中选择。

我可以把组织和钱包地址存放在哪里,以及更新或删除它们?另外,我还想添加一个组织的子部分及其地址。

例如

用户钱包拉进来:

  • 医院地址
  • 医院,实验室,地址
  • 医院,急诊室,地址
  • 消防处,地址
  • 消防处,设备基金,地址
  • 消防处,用品基金,地址
  • 等。

我会读唯一一个添加组织并删除它们。有什么办法在区块链内部实现分散吗?

克里斯

EN

回答 1

Ethereum用户

发布于 2017-08-29 17:54:22

智能契约可以将数组和映射作为数据结构,将状态永久存储在块链上,智能契约的函数可以修改它们。

对于您的例子,您可以使用这样的东西:

代码语言:javascript
复制
pragma solidity ^0.4.16;

contract MyOrgDatabase {
  struct Organization {
    address _where;
    string _name;
  }
  Organization[] public availableOrgs;
  address public owner = msg.sender;

  function addOrg(address _where, string _name) {
    require(msg.sender == owner);
    availableOrgs.push(Organization(_where, _name));
  }
}

该合同具有一个公共availableOrgs属性,任何人都可以从区块链中读取该属性。但是,只有创建契约的地址( owner)才能将组织添加到列表中(您可能还希望添加从列表中删除组织的功能,或者更改功能齐全的合同的合同所有权,但这应该会给您提供一个想法)。

票数 1
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/25422

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档