Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Создает ссылки на сущность в наборе сущностей.
Синтаксис
CreateRef(entityset_identifier, row_typed_expression)
Аргументы
entityset_identifier
Идентификатор набора сущностей, а не строковый литерал.
row_typed_expression
Строковое выражение, соответствующее ключевым свойствам типа сущности.
Замечания
row_typed_expression должен быть структурно эквивалентен типу ключа для сущности. То есть оно должно иметь одинаковое число и типы полей в том же порядке, что и ключи сущностей.
В приведенном ниже примере Order и BadOrders являются наборами сущностей типа Order, а идентификатор считается одним ключевым свойством Order. В этом примере показано, как можно создать ссылку на сущность в BadOrders. Обратите внимание, что ссылка может быть дана. То есть ссылка может не идентифицировать определенную сущность. В этих случаях операция с этой ссылкой DEREF возвращает значение NULL.
SELECT CreateRef(LOB.BadOrders, row(o.Id))
FROM LOB.Orders AS o
Пример
Следующий запрос Entity SQL использует оператор CREATEREF для создания ссылок на сущность в наборе сущностей. Запрос основан на модели продаж AdventureWorks. Чтобы скомпилировать и запустить этот запрос, выполните следующие действия.
Выполните процедуру, описанную в разделе "Практическое руководство. Выполнение запроса, возвращающего результаты структурного типа".
Передайте следующий запрос в качестве аргумента в
ExecuteStructuralTypeQueryметод:
SELECT VALUE Key(CreateRef(AdventureWorksEntities.Products,
row(p.ProductID)))
FROM AdventureWorksEntities.Products AS p