數(shù)據(jù)比對(duì)工具 LinQ可以取代SQL語(yǔ)句嗎?
LinQ可以取代SQL語(yǔ)句嗎?LINQ查詢和更新數(shù)據(jù)基本上可以代替SQL語(yǔ)句,但是數(shù)據(jù)庫(kù)文件的創(chuàng)建和刪除等維護(hù)工作不能代替SQL語(yǔ)句。當(dāng)然,VS2010也可以用來(lái)創(chuàng)建數(shù)據(jù)庫(kù)文件,但是它不像SQL語(yǔ)言那
LinQ可以取代SQL語(yǔ)句嗎?
LINQ查詢和更新數(shù)據(jù)基本上可以代替SQL語(yǔ)句,但是數(shù)據(jù)庫(kù)文件的創(chuàng)建和刪除等維護(hù)工作不能代替SQL語(yǔ)句。當(dāng)然,VS2010也可以用來(lái)創(chuàng)建數(shù)據(jù)庫(kù)文件,但是它不像SQL語(yǔ)言那樣方便用于數(shù)據(jù)庫(kù)工具。對(duì)于過(guò)濾、排序、匯總、提取字段、分組和聯(lián)接等查詢,LINQ與SQL基本相同,并且還有一個(gè)lambda表達(dá)式。
在C#中引入LINQ,以了解編寫和編譯數(shù)據(jù)庫(kù)代碼時(shí)是否有錯(cuò)誤,并在編寫時(shí)得到LINQ類庫(kù)提示,如添加屬性成員和關(guān)鍵字提示,使編程簡(jiǎn)單方便。如果不使用LINQ,SQL語(yǔ)句只能以字符串的形式嵌入到執(zhí)行語(yǔ)句中。編譯時(shí)找不到字符串錯(cuò)誤,運(yùn)行時(shí)很煩人。
另一個(gè)優(yōu)點(diǎn)是LINQ發(fā)展到LINQ to SQL,可以用O/R設(shè)計(jì)器處理數(shù)據(jù)庫(kù),用C#將數(shù)據(jù)庫(kù)映射到類,為數(shù)據(jù)庫(kù)的可視化編程提供了方便。參見“C#編程指南”(姚丹,清華大學(xué)出版社,2011年1月,可在線購(gòu)買)。本書詳細(xì)討論了LINQ處理數(shù)據(jù)庫(kù)。有很多例子來(lái)演示如何更新、排序和優(yōu)化AdventureWorks2008(和dw2008,lt2008)的連接,后者是sql2008的一個(gè)示例數(shù)據(jù)庫(kù)。