Storing State in a Smart Contract

Smart contracts give us the opportunity to store data in a stateful way, and where we can add and delete data within the smart contract…

Photo by Dimitri Karastelev on Unsplash

Storing State in a Smart Contract

Smart contracts give us the opportunity to store data in a stateful way, and where we can add and delete data within the smart contract, and then view a current state. So let’s do a simple contact of adding cities to a string array. Overall it will cost us some gas to add and delete strings, but not to view the state. The contract we will use is:

This has an add() method to add a new string to myArray, and a show() which will show the contents of myArray. The view element added to show() makes sure it is just a read function (and that we do not write to the function). We can then compile it in remix:

Now we can deploy:

This creates a new contact [here]:

If we look at the contract we get:

Next we can Verify the contract:

Note that the compiler we used is 0.4.24. We then add our code, and then the contact is validated:

It is now complete [here]:

This will cost us some gas as we change the state of the smart contact:

Once it has been mined, the smart contract will be updated:

We can then use the View() method to see the string:

Now we add “Glasgow”:

And once it has been mined, we can go back and show the new state:

Just magic! I love smart contracts!!!!

Go on, try my smart contract:

https://ropsten.etherscan.io/address/0xc79961ad2fdf3fcb4a57ebeaab78a1e3f8bf373c

And here’s the full example:

https://asecuritysite.com/ethereum/ethereum04