CREATEREF (Entity SQL)
Membuat referensi ke entitas dalam entityset.
Sintaks
CreateRef(entityset_identifier, row_typed_expression)
Argumen
entityset_identifier
Pengidentifikasi entityset, bukan string harfiah.
row_typed_expression
Ekspresi berjenis baris yang sesuai dengan properti kunci jenis entitas.
Keterangan
row_typed_expression
harus secara struktural setara dengan jenis kunci untuk entitas. Artinya, bidang harus memiliki jumlah dan jenis bidang yang sama dalam urutan yang sama dengan kunci entitas.
Dalam contoh di bawah ini, Pesanan dan BadOrders adalah set entitas dari jenis Pesanan, dan Id diasumsikan sebagai properti kunci tunggal Pesanan. Contoh ini menggambarkan bagaimana kita dapat menghasilkan referensi ke entitas di BadOrders. Perhatikan bahwa referensinya mungkin menjuntai. Artinya, referensi mungkin tidak benar-benar mengidentifikasi entitas tertentu. Dalam kasus tersebut, DEREF
operasi pada referensi tersebut mengembalikan null.
SELECT CreateRef(LOB.BadOrders, row(o.Id))
FROM LOB.Orders AS o
Contoh
Kueri Entity SQL berikut menggunakan operator CREATEREF untuk membuat referensi ke entitas dalam kumpulan entitas. Kueri didasarkan pada Model Penjualan AdventureWorks. Untuk mengompilasi dan menjalankan kueri ini, ikuti langkah-langkah berikut:
Ikuti prosedur di Cara: Menjalankan Kueri yang Menampilkan Hasil StructuralType.
Teruskan kueri berikut sebagai argumen ke metode
ExecuteStructuralTypeQuery
:
SELECT VALUE Key(CreateRef(AdventureWorksEntities.Products,
row(p.ProductID)))
FROM AdventureWorksEntities.Products AS p