Heim  >  Artikel  >  Backend-Entwicklung  >  Wie deklariere ich ein ValueBuilder-Objekt als StringSet, wenn ich UpdateItem in Dynamodb mit gosdk ausführe?

Wie deklariere ich ein ValueBuilder-Objekt als StringSet, wenn ich UpdateItem in Dynamodb mit gosdk ausführe?

王林
王林nach vorne
2024-02-09 12:54:08333Durchsuche

使用 gosdk 在 Dynamodb 中执行 UpdateItem 时如何将 ValueBuilder 对象声明为 StringSet?

Der Herausgeber von Apple stellt hier eine Methode zur Verwendung von gosdk vor, um das ValueBuilder-Objekt als StringSet zu deklarieren, wenn UpdateItem in Dynamodb ausgeführt wird. In Dynamodb ist StringSet ein Datentyp, der zum Speichern einer Sammlung von Zeichenfolgen verwendet wird. Durch die Verwendung des ValueBuilder-Objekts können wir dieses StringSet einfach erstellen, um die Daten in Dynamodb zu aktualisieren. Als Nächstes stellen wir Ihnen detailliert vor, wie Sie diesen Prozess mit gosdk implementieren.

Frageninhalt

HINWEIS: Könnte wie ein Duplikat davon aussehen, ist aber anders, weil ich das über Golang machen muss und es in js ist.

Ich möchte Folgendes für ein Dynamodb-Projekt in gosdk tun:

updateexpression: 'add socialaccounts :socialaccountid',
 expressionattributevalues: {
   ':socialaccountid': {
      'ss': [socialaccountid]
    }
 },

Die typische Implementierung in gosdk ist:

expression.add(expression.name("socialaccounts"), expression.value([]string{"socialaccountid"}))

Das SDK behandelt String-Arrays jedoch nicht als ss(stringset) 类型,而是视为 l(Listen)-Typen.

Fehler protokolliert:

65bcdb1af85f

Ich kann in der Dokumentation keine Funktion finden, die angibt, wie Typen erwähnt werden.

Kann jemand helfen?

Warum ich das tun möchte:

  1. Ich möchte, dass es auch dann funktioniert, wenn die Immobilie socialaccounts nicht existiert.
  2. Ich möchte set 操作与 list_append nicht zusammen verwenden, da dies zu doppelten Elementen führen könnte.

Lösung

Wenn Sie den Typ angeben müssen, verwenden Sie bitte dynamodb.attributevalue:

65bcdb27f61a

Ausgabe:

{
  SS: ["socialAccountId"]
}

Das obige ist der detaillierte Inhalt vonWie deklariere ich ein ValueBuilder-Objekt als StringSet, wenn ich UpdateItem in Dynamodb mit gosdk ausführe?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:stackoverflow.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen