2012-03-01 2 views
0

So Azure Table Storage possède trois propriétés de membre par défaut pour son TableServiceEntity class, dont Timestamp. Après la sortie en production, nous réalisons maintenant que nous avons besoin d'une propriété CreatedDateTime au lieu de Timestamp b/c nous n'avons aucun contrôle sur la valeur Timestamp, qui agit plus comme une valeur "Last Modified" que comme "Date de création".Copier les données de colonne - Stockage de table Azure

Comment puis-je copier la valeur dans Timestamp actuellement sur ma nouvelle propriété? En SQL, cela semble assez simple, mais le nuage est un animal différent. Merci.

Répondre

1

Dans Table Storage, vous n'avez aucun schéma. Dans une seule "table" vous pouvez avoir 10 lignes avec une classe C# définie de Person et 10 rangées de classe Dog avec des propriétés COMPLETEMENT différentes.

La raison pour laquelle je dis cela est parce qu'il n'y a pas de schéma, donc la meilleure chose à faire serait de "réinsérer" les lignes comme un lot avec la nouvelle colonne/propriété ajoutée à la classe. Vous pouvez également faire une UPSERT ainsi:

http://blogs.msdn.com/b/windowsazurestorage/archive/2011/09/15/windows-azure-tables-introducing-upsert-and-query-projection.aspx

Si la colonne est déjà définie alors il est facile et u serait tout simplement faire une mise à jour, mais il semble que cette nouvelle colonne n'existe pas sur les lignes précédentes entrées .

+0

Remonter! Je pense que cette documentation l'énonce assez bien. Je vous remercie. – woodyiii

+0

Pour aider quelqu'un d'autre, si vous décidez d'utiliser BatchMode lors de l'enregistrement, assurez-vous simplement que vous sauvegardez dans le même PartitionKey dans Azure Table Storage ou vous obtiendrez une exception. – woodyiii

1

Si vous utilisez une classe, ajoutez simplement le nouveau champ pour la date de création. Tirez toutes les données vers le bas et copiez l'horodatage dans le nouveau champ, puis appelez mise à jour sur la ligne. Si vous faites déjà des insertions et des suppressions et des thigns, devrait être assez simple.

+0

C'est le processus que j'avais en tête aussi pour le coder, mais je cherchais des exemples de confirmation et de code concret. Vous avez tous deux confirmé et répondu à ma question, alors merci. – woodyiii

Questions connexes