2017-05-02 1 views
0

Ma Recherche:ArangoDB lastinsert-valeur est NULL

J'insérerions 2 datasets sur 2 Collections avec lastInsert Key.

LET i = (
INSERT {"lvl": @Lvl, "kapitel_key":@Kkey, "plan_key": @Pkey, "xcontent_key": @Xckey, "user_key": @User_key, "templatefile": @Tf } 
    IN xtemplate 
     LET inserted = NEW 
      RETURN MERGE(inserted) 
    ) 
    INSERT {"type": "text", "text": "Write here...", "xtemplate_key": i._key, "user_key": @User_key} IN xinhalt 

Résultat:

{ 
    "type": "text", 
    "text": "Write here...", 
    "xtemplate_key": null, 
    "user_key": "2345632" 
} 

Pourquoi est-i._key NULL?

Winke Winke

Répondre

0

Le résultat i de votre sous-requête est de type tableau ne document. Chaque résultat de requête dans AQL provient du type array (voir docs).

Vous devez écrire i[0]._key au lieu de i._key dans votre deuxième INSERT.

LET i = (
INSERT {"lvl": @Lvl, "kapitel_key":@Kkey, "plan_key": @Pkey, "xcontent_key": @Xckey, "user_key": @User_key, "templatefile": @Tf } 
    IN xtemplate 
     LET inserted = NEW 
      RETURN MERGE(inserted) 
    ) 
    INSERT {"type": "text", "text": "Write here...", "xtemplate_key": i[0]._key, "user_key": @User_key} IN xinhalt 
+0

Thx fonctionne jet fin! – Moo