Partager via


CREATEREF (Entity SQL)

Crée les références à une entité dans un jeu d'entités.

CreateRef(entityset_identifier, row_typed_expression)

Arguments

  • entityset_identifier
    Identificateur de jeu d'entités ; ne correspond pas à un littéral de chaîne.
  • row_typed_expression
    Expression typée ligne correspondant aux propriétés de clés du type d'entité.

Notes

La structure de row_typed_expression doit être équivalente au type de clé de l'entité. Autrement dit, les champs qu'elle contient doivent être identiques en nombre et en types à ceux des clés de l'entité, et ils doivent être disposés dans le même ordre.

Dans l'exemple ci-dessous, Orders et BadOrders sont des jeux d'entités de type Order, et Id est supposé être l'unique propriété de clé de type Order. Cet exemple montre comment produire une référence à une entité de BadOrders. Notez que la référence peut être non résolue. Autrement dit, la référence peut ne pas identifier réellement une entité spécifique. Dans ce cas, une opération DEREF sur cette référence retourne une valeur NULL.

select CreateRef(LOB.BadOrders, row(o.Id)) 
from LOB.Orders as o 

Exemple

La requête Entity SQL ci-dessous utilise l'opérateur CREATEREF pour créer des références à une entité contenue dans un jeu d'entités. Cette requête est basée sur le modèle de vente AdventureWorks Sales Model. Pour compiler et exécuter cette requête, procédez comme suit :

  1. Suivez la procédure indiquée dans Procédure : exécuter une requête qui retourne des résultats StructuralType (EntityClient).

  2. Passez à la méthode ExecuteStructuralTypeQuery la requête suivante en tant qu'argument :

SELECT VALUE Key(CreateRef(AdventureWorksEntities.Products, 
    row(p.ProductID))) FROM AdventureWorksEntities.Products as p

Voir aussi

Référence

DEREF (Entity SQL)
KEY (Entity SQL)
REF (Entity SQL)

Concepts

Référence Entity SQL