程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> Entity Framework學習初級篇4--Entity SQL

Entity Framework學習初級篇4--Entity SQL

編輯:關於ASP.NET

Entity SQl是ADO.NET實體框架提供的SQl類語言,用於支持實體數據模型(EDM)。Entity SQl可用於對象查詢和使用EntityClient提供程序執行的查詢。

l 關鍵字

Value關鍵字

ESQl提供了SELECT VALUE子句以跳過隱式行構造。SELECT VALUE子句中只能指定一項。在使用這樣的子句時,將不會對SELECT子句中的項構造行包裝器,並且可生成所要形狀的集合,例如:SELECT VALUE it FROM NorthwindEntities.Customers as it

it關鍵字

it 出現在ESQl中, 查詢對象的別名默認值 "it" 改成其他字符串,例如:

"SELECT VALUE it FROM NorthwindEntities.Customers as it " 。

l 注釋:

Entity SQl 查詢可以包含注釋。注釋行以兩個短劃線(--) 開頭。

"SELECT VALUE it FROM NorthwindEntities.Customers as it  -- this a comment "

l Select查詢

例如:

SELECT VALUE it FROM NorthwindEntities.Customers as it

l 參數

參數是在esql之外定義的變量,每個參數都有名稱和類型,參數名稱在查詢表達式中定義,並以@符號作為前綴。例如:

Select VALUE c from NorthwindEntities.Customers as c where c.CustomerID=@customerID

l 聚合

Enity SQL不支持 * ,所以esql不支持count(*),而是使用count(0),例如:

Select count(0) from NorthwindEntities.Customers

l 分頁SKIP/LIMIT

可以通過在ORDER BY子句中使用SKIP 和 LIMIT子子句執行物理分頁。若要以確定的方式執行物理分頁,應使用SKIP 和 LIMIT。如果您只是希望以非確定的方式限制結果中的行數,則應使用TOP。TOP 和 SKIP/LIMIT是互斥的

使用SKIP/LIMIT分頁,esql代碼如下:

Select value c from NorthwindEntities.Customers as c order by c.CustomerID skip 0 limit 10

l TOP

SELECT子句可以在可選的ALl /DISTINCT 修飾符之後具有可選的TOP子子句。TOP子子句指定查詢結果中將只返回第一組行。esql代碼如下:

Select top(10) c.CustomerID from NorthwindEntities.Customers as c order by c.CustomerID

l NULL處理

Null文本與Entity SQl類型系統中的任何類型都兼容,可以使用cast進行類型轉換,例如:

select cast(c.region as string) from NorthwindEntities.Customers as c order by c.CustomerID limit 10

其中, Nvarchar等可以成string,數字類型可以轉成int32,其他的類型轉換類似。如果無法完成轉換,則將報異常。還有可以處理的方法有treat。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved