成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

SQL Server數(shù)據(jù)庫與.NET聯(lián)通概述

數(shù)據(jù)庫 SQL Server
我們今天是要和大家一起討論的是SQL Server數(shù)據(jù)庫與.NET與Visual Studio的聯(lián)通的介紹,以下就是文章的主要內(nèi)容的詳細(xì)描述。

此文章主要向大家講述的是SQL Server數(shù)據(jù)庫與.NET與Visual Studio的聯(lián)通的介紹,隨著SQL Server 2008數(shù)據(jù)庫的的上市,微軟另兩款開發(fā)產(chǎn)品.NET Framework 3.5與Visual Studio 2008也同步發(fā)布中文版Service Pack 1。

包含傳聞已久的微軟ORM(Object Relational Mapping)解決方案──ADO.NET Entity Framework,而LINQ,隨著SQL Server 2008的上市,微軟另兩款開發(fā)產(chǎn)品.NET Framework 3.5及Visual Studio 2008也同步發(fā)布中文版Service Pack 1,包含傳聞已久的微軟ORM(Object Relational Mapping)解決方案──ADO.NET Entity Framework,而LINQ(Language Integrated Query)也將增加支持存取Entity Framework對象的LINQ To Entities。

 

此外, ADO.NET Data Services也是新的,包含比SOAP(Simple Object Access Protocol)通訊協(xié)議更簡單的REST(Representational State Transfer)存取模式,可滿足傾向簡單應(yīng)用Web Services的Web開發(fā)者。

事實(shí)上,Visual Studio必須升級才能與SQL Server 2008無縫掛接,微軟的.NET與SQL Server研發(fā)團(tuán)隊(duì),有越來越緊密合作的趨勢,操作SQL Server數(shù)據(jù)庫***用的開發(fā)工具是Visual Studio,而.NET Framework目前支持最完整的數(shù)據(jù)庫也是SQL Server數(shù)據(jù)庫,可以看出微軟企圖利用彼此捆綁的策略,拉抬兩者市場份額的野心。

而SQL Server 2008本身跟程序開發(fā)有關(guān)的部分,比較重要的改變是增加許多新的數(shù)據(jù)方式,包括FileStream及Geography、Geometry等空間數(shù)據(jù)格式。FileStream可以存放文件的Metadata,并指定存放文件的實(shí)體目錄。而空間數(shù)據(jù)方式則包含許多函數(shù),幫助開發(fā)者處理點(diǎn)/線/面的空間計(jì)算。

對象與關(guān)系型數(shù)據(jù)對應(yīng)的解決方案

LINQ與ADO.NET Entity Framework在微軟是由兩個(gè)不同的團(tuán)隊(duì)研發(fā),功能上看似有些重迭,但實(shí)際上是要解決現(xiàn)今程序開發(fā)上,所面臨的不同問題。

LINQ提供統(tǒng)一操作各種數(shù)據(jù)集合的模式;而ADO.NET Entity Framework則是提供對象導(dǎo)向開發(fā)者,對象與關(guān)系型數(shù)據(jù)對應(yīng)的解決方案。

相對于對象導(dǎo)向程序開發(fā)的思維,在發(fā)明SQL的年代,并沒有對象導(dǎo)向的觀念,所以SQL語法一點(diǎn)也不對象導(dǎo)向。而習(xí)慣用對象思考,并希望對象導(dǎo)向觀念與關(guān)系型數(shù)據(jù)庫可以平順整合的開發(fā)者,會(huì)希望有一套ORM解決方案。

而ORM的目的,是企圖幫助開發(fā)者從對象導(dǎo)向程序開發(fā)的角度,單純地思考類別之間的繼承及參照關(guān)系,而不需要知道實(shí)體的數(shù)據(jù)是如何分散在不同的數(shù)據(jù)表,以及對象背后對應(yīng)哪些數(shù)據(jù)表,甚至SQL指令的組成,也交由平臺處理。

ADO.NET Entity Framework就是微軟的ORM解決方案,事實(shí)上,ORM在Java及PHP等陣營早有對應(yīng)的解決方案,所以微軟在這方面的腳步并不算是很快。

ORM的價(jià)值

 

ADO.NET Entity Framework中的“Entity(數(shù)據(jù)實(shí)體)”,是指對象化的數(shù)據(jù)記錄。使用數(shù)據(jù)實(shí)體而不直接連接數(shù)據(jù)庫的好處,在于開發(fā)者不必使用SQL指令,而是透過對象的方法(Method)存取數(shù)據(jù)庫,藉以簡化程序設(shè)計(jì)的復(fù)雜度,并提升程序代碼重復(fù)使用的機(jī)會(huì)。

 

以客戶數(shù)據(jù)為例,在數(shù)據(jù)庫有Customer和Customer Detail兩個(gè)數(shù)據(jù)表(Table),運(yùn)用ADO.NET Entity Framework,可以把2個(gè)數(shù)據(jù)表對應(yīng)(Mapping)成一個(gè)Customer數(shù)據(jù)實(shí)體,也就是對象類別,開發(fā)者只需呼叫Customer類別的Insert、Update和Delete等Method,并輸入必要的參數(shù),那么ADO.NET Entity Framework即自動(dòng)產(chǎn)生對應(yīng)的SQL語法,一對多地新增、修改及刪除Customer和Customer Detail數(shù)據(jù)表中的數(shù)據(jù)。

對象與數(shù)據(jù)表的對應(yīng),除了一對多的情況,也可能是多對一甚至多對多的復(fù)雜對應(yīng)。例如一個(gè)Employee數(shù)據(jù)表,在業(yè)務(wù)面因?yàn)閷傩圆煌鸪蒑anager、Employee和新人等3個(gè)不同的類別。

由于ORM需要對應(yīng)SQL Server數(shù)據(jù)庫與對象的關(guān)聯(lián),還要處理對象之間的繼承關(guān)系,使得應(yīng)用上存在一定的復(fù)雜度,因此,設(shè)計(jì)工具扮演的角色,相形之下變得重要,如果它無法使對應(yīng)關(guān)系的設(shè)定,盡可能地簡單而直覺,就會(huì)減損使用ORM的好處。

Visual Studio 2008升級至SP1之后,將提供可視化的精靈及操作工具,處理數(shù)據(jù)實(shí)體與數(shù)據(jù)庫的對應(yīng)。主要的功能包括透過實(shí)體數(shù)據(jù)模型(Entity Data Model)導(dǎo)入現(xiàn)有數(shù)據(jù)庫的數(shù)據(jù)表,再以此為基礎(chǔ),設(shè)定數(shù)據(jù)表之間的關(guān)聯(lián),然后經(jīng)由概念模型(Conceptual Model)處理數(shù)據(jù)表與數(shù)據(jù)實(shí)體兩者的對應(yīng)。

這些作法的背后,實(shí)際上底層是透過3個(gè)XML文件記錄數(shù)據(jù)實(shí)體、數(shù)據(jù)庫結(jié)構(gòu)及兩者之間的對應(yīng)關(guān)系。不過,Visual Studio的操作界面,將透過圖形化的設(shè)計(jì)工具簡化對應(yīng)的難度。

概念模型與ER Model不同

微軟所謂的概念模型,與過去設(shè)計(jì)數(shù)據(jù)庫架構(gòu)常見的ER Model(Entity Relationship Model,實(shí)體關(guān)系模型)并不相同。

ER Model以圖形化的方式,描述實(shí)體數(shù)據(jù)表之間的一對一、一對多或多對多關(guān)系,是屬于實(shí)體的數(shù)據(jù)庫模型。而概念模型則貼近系統(tǒng)分析階段的思維,以業(yè)務(wù)的角度看待數(shù)據(jù)實(shí)體。

從這里也可以看出對象導(dǎo)向與SQL Server數(shù)據(jù)庫設(shè)計(jì)理念的不同之處。

數(shù)據(jù)庫設(shè)計(jì)時(shí),為了避免同樣的數(shù)據(jù)重復(fù)存在于多個(gè)數(shù)據(jù)表,造成空間的浪費(fèi)及維護(hù)的困難,所以必須歷經(jīng)正規(guī)化過程。

例如員工基本數(shù)據(jù)包含親屬數(shù)據(jù),但設(shè)計(jì)關(guān)系型數(shù)據(jù)庫時(shí)為了正規(guī)化,親屬數(shù)據(jù)可能被拆出來,成為另一個(gè)數(shù)據(jù)表,而兩者透過主鍵(Primary Key)和外部索引鍵(Foreign Key)建立一對多關(guān)系。

使用ER Model就會(huì)是兩個(gè)數(shù)據(jù)表透過一對多關(guān)系連接,而進(jìn)入概念模型之后,就對象導(dǎo)向的觀點(diǎn),將是以一個(gè)數(shù)據(jù)實(shí)體代表員工,其中會(huì)有一個(gè)屬性是親屬數(shù)據(jù)的集合。而在概念模型的背后,是員工這個(gè)數(shù)據(jù)實(shí)體,一對多地對應(yīng)到數(shù)據(jù)庫的員工數(shù)據(jù)及親屬數(shù)據(jù)兩個(gè)數(shù)據(jù)表。

 

 

 

【編輯推薦】

  1. SQL Server數(shù)據(jù)轉(zhuǎn)換服務(wù)利用與導(dǎo)入式格式的描述
  2. SQL Server性能進(jìn)行提高的4項(xiàng)技術(shù)概述
  3. 正確維護(hù)Sql Server表索引的2個(gè)步驟
  4. SQL Server數(shù)據(jù)庫的N多注意事項(xiàng)
  5. SQL ServerCoalesce的大量使用的具體描述

 

責(zé)任編輯:佚名 來源: csdn.net
相關(guān)推薦

2010-07-14 17:49:39

SQL Server數(shù)

2010-07-20 10:02:41

SQL Server

2010-07-05 10:44:35

SQL Server數(shù)

2011-05-20 13:11:22

ADO.NET

2011-08-04 15:20:52

SQL Server數(shù)據(jù)庫鏡像

2011-03-22 13:49:20

SQL Server數(shù)維度表事實(shí)表

2010-07-15 17:28:50

SQL Server

2010-07-16 15:53:19

SQL Server數(shù)

2010-07-21 14:17:36

SQL Server數(shù)

2009-03-27 13:15:20

OracleSQL Server鏡像

2011-05-26 14:07:11

SQL ServerOracle數(shù)據(jù)庫鏡像對比

2009-08-05 15:40:49

ASP.NET連接數(shù)據(jù)

2011-09-07 15:11:31

SQL Server同步

2021-05-17 06:57:34

SQLServer數(shù)據(jù)庫

2010-07-21 14:11:36

SQL Server

2010-07-08 11:05:14

SQL Server數(shù)

2010-07-06 09:49:56

SQL Server

2010-07-16 17:11:11

SQL Server數(shù)

2009-06-26 14:41:48

ADO.NET

2009-08-05 09:38:28

SQL Server數(shù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 精品一区二区三区四区视频 | 精品久久国产老人久久综合 | av网址在线| 欧美xxxx网站 | 91影院在线观看 | 在线播放中文 | 99re国产 | 欧美黄色网 | 91pao对白在线播放 | 欧美自拍网站 | 91精品国产91久久久久久不卞 | 国产精品一区在线观看你懂的 | 国产精品亚洲一区二区三区在线 | 久久久久久亚洲精品 | 精精精精xxxx免费视频 | 在线播放国产一区二区三区 | 一区二区三区欧美在线观看 | 日韩欧美三级在线 | 色婷婷精品国产一区二区三区 | 国产精品久久久久久久久久不蜜臀 | 欧美人成在线视频 | 国产成人免费在线 | 国产精品成人一区二区三区夜夜夜 | 黄网免费 | 亚洲国产成人精品女人久久久 | 最新国产精品 | 男人天堂免费在线 | 日本高清视频在线播放 | 欧美国产精品一区二区三区 | 国产日韩精品视频 | 成人视屏在线观看 | 成人免费三级电影 | 91视视频在线观看入口直接观看 | 国产在线精品一区二区 | 亚洲综合在线视频 | 伊人精品一区二区三区 | 亚州av在线| 久久久夜色精品亚洲 | 成人九色| 久久久男人的天堂 | 国产精品毛片 |