SQL Server数据库与.NET联通概述

此文章主要向大家讲述的是SQL Server数据库与.NET与Visual Studio的联通的介绍,随着SQL Server 2008数据库的的上市,微软另两款开发产品.NET Framework 3.5与Visual Studio 2008也同步发布中文版Service Pack 1。

包含传闻已久的微软ORM(Object Relational Mapping)解决方案──ADO.NET Entity Framework,而LINQ,随着SQL Server 2008的上市,微软另两款开发产品.NET Framework 3.5及Visual Studio 2008也同步发布中文版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)通讯协议更简单的REST(Representational State Transfer)存取模式,可满足倾向简单应用Web Services的Web开发者。

事实上,Visual Studio必须升级才能与SQL Server 2008无缝挂接,微软的.NET与SQL Server研发团队,有越来越紧密合作的趋势,操作SQL Server数据库***用的开发工具是Visual Studio,而.NET Framework目前支持最完整的数据库也是SQL Server数据库,可以看出微软企图利用彼此捆绑的策略,拉抬两者市场份额的野心。

而SQL Server 2008本身跟程序开发有关的部分,比较重要的改变是增加许多新的数据方式,包括FileStream及Geography、Geometry等空间数据格式。FileStream可以存放文件的Metadata,并指定存放文件的实体目录。而空间数据方式则包含许多函数,帮助开发者处理点/线/面的空间计算。

对象与关系型数据对应的解决方案

LINQ与ADO.NET Entity Framework在微软是由两个不同的团队研发,功能上看似有些重迭,但实际上是要解决现今程序开发上,所面临的不同问题。

LINQ提供统一操作各种数据集合的模式;而ADO.NET Entity Framework则是提供对象导向开发者,对象与关系型数据对应的解决方案。

相对于对象导向程序开发的思维,在发明SQL的年代,并没有对象导向的观念,所以SQL语法一点也不对象导向。而习惯用对象思考,并希望对象导向观念与关系型数据库可以平顺整合的开发者,会希望有一套ORM解决方案。

而ORM的目的,是企图帮助开发者从对象导向程序开发的角度,单纯地思考类别之间的继承及参照关系,而不需要知道实体的数据是如何分散在不同的数据表,以及对象背后对应哪些数据表,甚至SQL指令的组成,也交由平台处理。

ADO.NET Entity Framework就是微软的ORM解决方案,事实上,ORM在Java及PHP等阵营早有对应的解决方案,所以微软在这方面的脚步并不算是很快。

ORM的价值

 

ADO.NET Entity Framework中的“Entity(数据实体)”,是指对象化的数据记录。使用数据实体而不直接连接数据库的好处,在于开发者不必使用SQL指令,而是透过对象的方法(Method)存取数据库,藉以简化程序设计的复杂度,并提升程序代码重复使用的机会。

 

以客户数据为例,在数据库有Customer和Customer Detail两个数据表(Table),运用ADO.NET Entity Framework,可以把2个数据表对应(Mapping)成一个Customer数据实体,也就是对象类别,开发者只需呼叫Customer类别的Insert、Update和Delete等Method,并输入必要的参数,那么ADO.NET Entity Framework即自动产生对应的SQL语法,一对多地新增、修改及删除Customer和Customer Detail数据表中的数据。

对象与数据表的对应,除了一对多的情况,也可能是多对一甚至多对多的复杂对应。例如一个Employee数据表,在业务面因为属性不同,而拆成Manager、Employee和新人等3个不同的类别。

由于ORM需要对应SQL Server数据库与对象的关联,还要处理对象之间的继承关系,使得应用上存在一定的复杂度,因此,设计工具扮演的角色,相形之下变得重要,如果它无法使对应关系的设定,尽可能地简单而直觉,就会减损使用ORM的好处。

Visual Studio 2008升级至SP1之后,将提供可视化的精灵及操作工具,处理数据实体与数据库的对应。主要的功能包括透过实体数据模型(Entity Data Model)导入现有数据库的数据表,再以此为基础,设定数据表之间的关联,然后经由概念模型(Conceptual Model)处理数据表与数据实体两者的对应。

这些作法的背后,实际上底层是透过3个XML文件记录数据实体、数据库结构及两者之间的对应关系。不过,Visual Studio的操作界面,将透过图形化的设计工具简化对应的难度。

概念模型与ER Model不同

微软所谓的概念模型,与过去设计数据库架构常见的ER Model(Entity Relationship Model,实体关系模型)并不相同。

ER Model以图形化的方式,描述实体数据表之间的一对一、一对多或多对多关系,是属于实体的数据库模型。而概念模型则贴近系统分析阶段的思维,以业务的角度看待数据实体。

从这里也可以看出对象导向与SQL Server数据库设计理念的不同之处。

数据库设计时,为了避免同样的数据重复存在于多个数据表,造成空间的浪费及维护的困难,所以必须历经正规化过程。

例如员工基本数据包含亲属数据,但设计关系型数据库时为了正规化,亲属数据可能被拆出来,成为另一个数据表,而两者透过主键(Primary Key)和外部索引键(Foreign Key)建立一对多关系。

使用ER Model就会是两个数据表透过一对多关系连接,而进入概念模型之后,就对象导向的观点,将是以一个数据实体代表员工,其中会有一个属性是亲属数据的集合。而在概念模型的背后,是员工这个数据实体,一对多地对应到数据库的员工数据及亲属数据两个数据表。

 

 

 

【编辑推荐】

  1. SQL Server数据转换服务利用与导入式格式的描述
  2. SQL Server性能进行提高的4项技术概述
  3. 正确维护Sql Server表索引的2个步骤
  4. SQL Server数据库的N多注意事项
  5. SQL ServerCoalesce的大量使用的具体描述

 

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/230504.html<

(0)
管理的头像管理
上一篇2025-04-19 06:34
下一篇 2025-04-19 06:35

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注