다음을 통해 공유


CREATEREF(Entity SQL)

엔터티 집합의 엔터티에 대한 참조를 생성합니다.

문법

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 판매 모델을 기반으로 합니다. 이 쿼리를 컴파일하고 실행하려면 다음 단계를 수행합니다.

  1. 방법: StructuralType 결과를 반환하는 쿼리 실행의 절차를 따릅니다.

  2. 다음 쿼리를 메서드에 인수 ExecuteStructuralTypeQuery 로 전달합니다.

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

참고하십시오