CREATEREF (Entity SQL)
Varlık kümesindeki bir varlığa başvurular oluşturur.
Söz dizimi
CreateRef(entityset_identifier, row_typed_expression)
Bağımsız değişkenler
entityset_identifier
Varlık kümesi tanımlayıcısı, dize değişmez değeri değil.
row_typed_expression
Varlık türünün anahtar özelliklerine karşılık gelen satır türünde bir ifade.
Açıklamalar
row_typed_expression
varlığın anahtar türüne yapısal olarak eşdeğer olmalıdır. Başka bir ifadeyle, varlık anahtarlarıyla aynı sırada aynı sayıda ve türde alana sahip olmalıdır.
Aşağıdaki örnekte, Siparişler ve BadOrder'ler Order türünde varlık kümeleridir ve Kimliğin Order'ın tek anahtar özelliği olduğu varsayılır. Örnekte BadOrders'de bir varlığa nasıl başvuru oluşturacağımız gösterilmektedir. Başvurunun sarkık olabileceğini unutmayın. Diğer bir ifadeyle, başvuru aslında belirli bir varlığı tanımlamayabilir. Bu gibi durumlarda, bu başvurudaki bir DEREF
işlem null döndürür.
SELECT CreateRef(LOB.BadOrders, row(o.Id))
FROM LOB.Orders AS o
Örnek
Aşağıdaki Entity SQL sorgusu, varlık kümesindeki bir varlığa başvuruları oluşturmak için CREATEREF işlecini kullanır. Sorgu AdventureWorks Satış Modeli'ni temel alır. Bu sorguyu derlemek ve çalıştırmak için şu adımları izleyin:
Nasıl yapılır: StructuralType Sonuçları Döndüren Bir Sorgu Yürütme bölümündeki yordamı izleyin.
Aşağıdaki sorguyu yöntemine
ExecuteStructuralTypeQuery
bağımsız değişken olarak geçirin:
SELECT VALUE Key(CreateRef(AdventureWorksEntities.Products,
row(p.ProductID)))
FROM AdventureWorksEntities.Products AS p