2020-10-16 02:29:48 +03:00
---
type: post
title: "Tip 85 - Updating an item from a Azure Storage Table"
excerpt: "Learn how to update an item from an Azure Storage Table"
2020-10-29 01:29:41 +03:00
tags: [Storage]
2020-10-16 02:29:48 +03:00
date: 2018-01-24 17:00:00
---
::: tip
:bulb: Learn more : [Azure storage account overview ](https://docs.microsoft.com/azure/storage/common/storage-account-overview?WT.mc_id=docs-azuredevtips-azureappsdev ).
:::
2020-10-16 18:58:14 +03:00
### Updating an item from a Azure Storage Table
2020-10-16 02:29:48 +03:00
In case you are new to the Azure Storage Tables, we've reviewed the following items this week:
* [Creating your first Azure Storage Table ](https://microsoft.github.io/AzureTipsAndTricks/blog/tip82.html )
* [Adding an item to a Azure Storage Table ](https://microsoft.github.io/AzureTipsAndTricks/blog/tip83.html )
* [Reading an item from a Azure Storage Table ](https://microsoft.github.io/AzureTipsAndTricks/blog/tip84.html )
* [Today - Updating an item from a Azure Storage Table ](https://microsoft.github.io/AzureTipsAndTricks/blog/tip85.html )
2020-10-29 01:29:41 +03:00
Today, we'll be taking a look at updating an item through C# code into an Azure Storage Table.
2020-10-16 02:29:48 +03:00
#### Getting Started
Open the C# Console application that we were working with [yesterday ](https://microsoft.github.io/AzureTipsAndTricks/blog/tip84.html ) and let's add a method to:
* Update an item based off of the table, RowKey and PartitionKey that we pass in.
#### Update an item
In our `Program.cs` file, we'll now add in a helper method that passes in a table, RowKey and PartitionKey and the new message that we want to use.
***Special thanks to Niko12 for his comment below which caused me to rewrite this method.***
```csharp
static void UpdateMessage(CloudTable table, string partitionKey, string rowKey, string newMessage)
{
TableOperation retrieve = TableOperation.Retrieve< Thanks > (partitionKey, rowKey);
TableResult result = table.Execute(retrieve);
Thanks thanks = (Thanks)result.Result;
thanks.ETag = "*";
thanks.Name = newMessage;
if (result != null)
{
TableOperation update = TableOperation.Replace(thanks);
table.Execute(update);
}
}
```
2020-10-29 01:29:41 +03:00
In this example, once it performs the lookup, if it is not null, then we want to update the message with the one that we specify.
2020-10-16 02:29:48 +03:00
#### Putting it all together.
2020-10-29 01:29:41 +03:00
The **Main** method inside of the `Program.cs` file, we'll call our helper method.
2020-10-16 02:29:48 +03:00
```csharp
static void Main(string[] args)
{
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(
CloudConfigurationManager.GetSetting("StorageConnection"));
CloudTableClient tableClient = storageAccount.CreateCloudTableClient();
CloudTable table = tableClient.GetTableReference("thankfulfor");
table.CreateIfNotExists();
//added these lines
UpdateMessage(table, "ThanksApp", "I'm thankful for the time with my family", "I'm thankful for the time with my family and friends");
//added these lines
table.Execute(update);
Console.ReadKey();
}
```
< img :src = "$withBase('/files/azupdatetable1.gif')" >