Sql Server 2008 为开发带来的新特性

许多数据库开发人员负责创建的查询需要用来返回其应用程序所需的数据。您可能熟悉 LINQ(语言集成查询)工具,它允许数据库开发人员使用基于 Microsoft® .NET 的编程语言而非普通的 T-SQL 语句向数据库发出查询请求。SQL Server 2008 向 SQL 提供程序提供了新的 LINQ 命令,可以允许开发人员直接对 SQL Server 表和列发出 LINQ 命令,从而增强了 LINQ 的功能。这将缩短创建新数据查询所需的时间。

对数据库进行开发时,开发人员会使用较高级别对象,将其映射到单独的数据库表和列。这些对象(也称为实体)代表数据库应用程序所需的数据,因此开发人员并不需要了解该数据的实际存储结构以及数据库的架构。新的 ADO.NET 实体框架现在允许开发人员使用这些实体来创建数据库查询。底层数据库结构的抽象化可极大地提高开发人员的生产率。

SQL Server 2008 为 T-SQL 提供了许多不同的增强功能,可以提高数据库开发人员的效率。新的 MERGE 语句就是一个例子,它允许开发人员在试图插入数据前先检查该数据是否存在。执行 INSERT 语句之前所做的这项检查允许数据进行更新。现在不再需要创建复杂的连接来更新已存在的数据并插入不存在的数据,所有这些都可以在一个单独的语句中完成。

此外,从合并的日期/时间数据类型中分离时间和日期数据也变得更加简单。SQL Server 2008 引入了两种独立的数据类型来处理日期和时间数据。不同数据类型的转换可以改进许多查询的性能,因为无需对数据执行任何操作即可将其用于查询。

创建较新的数据库结构时,数据库开发人员经常会发现他们必须要扩展数据库的结构才能执行映射应用程序。SQL Server 2008 使用全新的空间数据类型来帮助解决此问题。GEOGRAPHY 和 GEOMETRY 这两种空间数据类型允许开发人员将位置特定的数据直接存储到数据库中,而无需将这些数据元素细分为适合其他标准数据类型的格式。

过去,数据库开发人员经常会遇到如何存储及利用大型二进制对象(例如文档和介质文件)的问题。常用的方法是将文件存储在数据库以外,而只在数据库中存储一个到外部文件的指针。但是使用这种方法时,在移动文件时必须要记得同时更新指针。

SQL Server 2008 使用新的 FILESTREAM 数据类型来解决此问题。使用这种数据类型,文件仍可以存储在数据库以外,但是数据被视为数据库的一部分从而实现事务的一致性。这将允许使用常规的文件操作方法,同时保持数据库在性能和安全方面的优势。

SQL Server 2008 引入了稀疏列,允许存储的 NULL 不占用磁盘上的任何物理空间。因为稀疏列不消耗实际空间,因此包含稀疏列的表可以不受 1,024 列的限制。 关于SQL Server 2008: 新数据类型,参见: http://technet.microsoft.com/zh-cn/magazine/cc434692.aspx

使用 FileStream SQL Server 2008 中编程: http://msdn.microsoft.com/zh-cn/magazine/dd695918.aspx

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏性能与架构

mysql 大数据量的分页优化

使用limit进行分页,翻到10000多页后效率低 原因 limit offset 会逐行查找,是先查询再跳过 优化思路 (1)从业务逻辑 不允许翻过100页,...

3775
来自专栏乐沙弥的世界

共享池中保留池的调整(shared_pool_reserved_size)

--*************************************************

841
来自专栏数据库

SQL Server数据库介绍

1、数据库基本概念 数据:描述事物的符号 数据表:由记录(行)和字段(列)组成 数据库:数据表的集合 数据库管理系统:对数据库进行管理和维护DBMS 数据库管理...

2346
来自专栏小白安全

重置dedecms管理员后台密码重现及分析

0×00 概述 2018年1月,网上爆出dedecms v5.7 sp2的前台任意用户密码重置和前台任意用户登录漏洞,加上一个管理员前台可修改其后台密码...

1.3K5
来自专栏运维技术迷

MySQL数据库(七):数据导出与导入

一、数据导入 1.什么是导入:把系统文件的内容保存到数据库服务器的表里 2.导入数据时的注意事项? -表中字段的个数要和文件列中的个数相等 ...

3835
来自专栏玩转JavaEE

elasticsearch文档操作

上篇文章向读者介绍了Elasticsearch中修改数据的操作,使用了Elasticsearch提供的一整套强大的REST API,本文继续来看通过这一套API...

3873
来自专栏Eternally运维

Mysql配置文件的理解

3854
来自专栏技术博文

php dirname(__FILE__) 获取当前文件的绝对路径

比如当前文件是放在(d:\www\)下,文件名是test.php <?php echo __FILE__ ; // 取得当前文件的绝对地址,结果:D:\www...

3535
来自专栏Eternally运维

Mysql配置文件的理解

1903
来自专栏Python小屋

Python+django网页设计入门(7):常用ORM操作

1)ORM是指Object Relational Mapping的缩写,可以看作是对关系型数据库的封装。每个类对应数据库里的一个表,类的每个数据成员对应表中的一...

541

扫码关注云+社区