형식 시스템(Entity SQL)
Entity SQL 에서는 다음의 많은 형식을 지원합니다.
기본(단순) 형식 - Int32 및 String.
명목 형식 - 스키마에서 정의됨. EntityType, ComplexType 및 RelationshipType
익명 형식 - 스키마에서 명시적으로 정의되지 않음. CollectionType, RowType 및 RefType
이 단원에서는 스키마에서 명시적으로 정의되지 않았지만 Entity SQL 에서 지원되는 익명 형식에 대해 설명합니다. 기본 형식과 명목 형식에 대한 자세한 내용은 개념적 모델 형식을 참조하십시오.
행
행의 구조는 행이 구성된 형식화된 멤버 및 명명된 멤버의 시퀀스에 따라 달라집니다. 행 형식은 ID를 갖지 않으며 상속받을 수 없습니다. 멤버가 각각 동일한 경우 같은 행 형식의 인스턴스는 서로 동일합니다. 행은 구조가 동일한 것을 제외한 어떠한 동작도 갖지 않으며 공용 언어 런타임에 해당하는 항목이 없습니다. 쿼리를 실행하면 행 또는 행 컬렉션이 포함된 구조가 생성될 수 있습니다. Entity SQL 쿼리와 호스트 언어 간의 API 바인딩은 결과를 생성하는 쿼리에서 행이 구현되는 방법을 정의합니다. 행 인스턴스를 생성하는 방법은 생성 형식(Entity SQL)를 참조하십시오.
컬렉션
컬렉션 형식은 다른 개체의 0개 이상 인스턴스를 나타냅니다. 컬렉션을 생성하는 방법은 생성 형식(Entity SQL)를 참조하십시오.
참조
참조는 특정 엔터티 집합 내의 특정 엔터티를 가리키는 논리 포인터입니다.
Entity SQL 에서는 참조를 통한 생성, 해체 및 탐색에 사용되는 다음 연산자를 지원합니다.
멤버 액세스(dot) 연산자(.
)를 사용하여 참조를 탐색할 수 있습니다. 다음 조각에서는 r(참조) 속성을 탐색하여 Id 속성(Order)을 추출합니다.
select o2.r.Id
from (select ref(o) as r from LOB.Orders as o) as o2
참조 값이 null이거나 참조 대상이 존재하지 않는 경우 결과는 null입니다.