2014-06-16 3 views
1

Je voudrais modifier ItemNames dans mon SimpleDB en utilisant boto. Bien que je sois capable de changer facilement les attributs en utilisant l'item ['attr'] = xxxxxx, je n'ai pas été capable de comprendre comment changer les ItemNames eux-mêmes. Ma tentative ratée est montrée ci-dessous. Toute orientation serait très appréciée.Modification ItemName (clé primaire) dans SimpleDB avec boto

connection = boto.connect_sdb(ACCESS_KEY,SECRET_KEY) 
domain = connection.get_domain(domain_name) 
new_unique_name = 'MyNewPrimaryKey' 
item = domain.get_item('CurrentPrimaryKey') 
item.name = new_unique_name 
item.save 

Répondre

1

Vous ne pouvez pas modifier le itemName(). Amazon SimpleDB nécessite simplement un identifiant unique pour chaque ligne de votre base de données. Item Le nom doit être unique comme votre pk dans votre base de données traditionnelle. Vous ne pouvez pas mettre à jour le nom d'élément(). Vous pouvez le supprimer et le créer de nouveau avec votre nouveau nom. S'il vous plaît rappelez-vous, si vous supprimez itemName() alors tous les attribute-value paire qui sont associés à ce itemName() seront également supprimer.

+1

Merci Ashish. Je veux changer pour un nouveau modèle de nommage pour les ItemNames ainsi je les recréerai et supprimerai les vieux disques puisque les ItemNames ne peuvent pas être modifiés. – SnowPuffKing