捏造对实体集中实体的引用。
语法
CreateRef(entityset_identifier, row_typed_expression)
论据
entityset_identifier
实体集标识符,而不是字符串文本。
row_typed_expression
对应于实体类型的键属性的行类型表达式。
注解
row_typed_expression
在结构上必须与实体的键类型等效。 也就是说,它必须具有相同的字段数和类型,其顺序与实体键相同。
在下面的示例中,Orders 和 BadOrders 都是 Order 类型的实体集,ID 假定为 Order 的单个键属性。 该示例演示了如何生成对 BadOrders 中实体的引用。 请注意,引用可能悬空。 也就是说,引用可能实际上无法标识特定实体。 在这些情况下, DEREF
该引用上的作返回 null。
SELECT CreateRef(LOB.BadOrders, row(o.Id))
FROM LOB.Orders AS o
示例:
以下 Entity SQL 查询使用 CREATEREF 运算符来捏造对实体集中实体的引用。 查询基于 AdventureWorks 销售模型。 若要编译并运行此查询,请执行以下步骤:
按照作方法中的过程作 :执行返回 StructuralType 结果的查询。
将以下查询作为参数传递给
ExecuteStructuralTypeQuery
方法:
SELECT VALUE Key(CreateRef(AdventureWorksEntities.Products,
row(p.ProductID)))
FROM AdventureWorksEntities.Products AS p