SQL Server 2008编程入门经典(第三版)

c#小王子 c#小王子 2021-07-15 1356 SQL Server


SQL Server 2008编程入门经典(第三版)


本书内容简介


从本书书名可以看出,本书涵盖的 SOL Server 2008 的内容是明确地面向开发人员的。 SQL Server 2008 是发展近 20 年的数据库管理系统的最新版本。它是在对 SQL Server 7.0版本重新设计的基础上建立的———提供了单独的日期和时间数据类型,以及地理空间支持。本书着重解决各层次开发人员的核心编程需求。另外,本书主要围绕 SQL Server 2008 版本讲解,但也会涉及向后兼容性的问题,因为这可能影响设计或编码选择。


本书内容安排


本书内容按照从基本到高级的顺序安排,同时假定您已经是富有经验的开发人员(除了数据库方面)。要学习本书,您必须具有编程的基本知识,如变量、数据类型以及过程化编程。当然,您不必学过查询。


本书尤其适合于开发人员使用。为了简洁起见,本书会掩盖或完全忽略那些面向数据库管理员而非开发人员的内容。当然本书也涉及数据库管理的问题,因为这些问题在开发过程中需要考虑到,本书将在第 19 章对几个数据库管理相关的问题作简单的介绍。


在客户端开发方面,本书尽量做到与语言无关。通常忽略所使用的语言,如 VB、C#、C+、 Java,以及其他语言(本书侧重于服务器端的开发),而在涉及时也对不同语言一视同仁。


在学习顺序方面,首先学习 SQL 基本对象,然后是基本的查询和连接知识。接着学习数据库的其他对象,并讨论与数据库物理设计有关的内容。再然后学习如何编写更健壮的 SQL Server 脚本代码、存储过程、用户自定义函数与触发器。再进一步学习一些 SOL Server的外围功能。本书最后要学习的是数据库管理方面的重要内容,有助于维护用户开发的数据库。


使用本书的条件


使用本书需要安装 SQL Server。由于本书大量使用各种 SQL Server 2008 管理工具,因此我推荐安装包含所有模块功能的 SQL Server 版本,而不是 SQL Server Express。虽说如此,本书还是侧重于介绍脚本编写,因此即使是 SQL Server Express 用户,也能学习本书的大部分内容。还需要 AdventureWorks2008 样本数据库,以及安装一些自定义数据库。访问这些数据库的指令参见本书配套网站上的 ReadMe 文件。


虽然 Visual Studio 对于学习本书也很有用,但是大部分所需的 Visual Studio 特性都包括在 SQL Server 产品附带的 Business Intelligence Studio 中。


源代码


在读者学习本书中的示例时,可以手工输入所有的代码,也可以使用本书附带的源代码文件。


第1章 RDBMS 基础


SQL Server 数据库的构成


数据库包括哪些内容? 当然包括数据(不保存任何数据的数据库是没有什么作用的)。但实际上关系数据库管理系统(Relational Database Management System,RDBMS)不仅仅是数据。目前高级的 RDBMS 不仅可以保存数据,而且可以管理数据,如限定输入到系统内的数据类型,还能方便地从系统中读取数据。如果仅仅是想将数据安全保存,则可使用任意数据存储系统。 RDBMS 不仅可以保存数据本身,还可以定义数据类型和数据业务规则。


不要将"数据业务规则"与更通用的业务规则两者相混淆,后者可以应用于整个系统(例如,用户在登录之前不能看到任何数据,或在每月的第一天自动调整财务系统中的本期)。实际上,系统的任意层都可以实施这类规则(目前,在 n 层系统的中间层或客户层已经很常用)。但这里所涉及的业务规则特指与数据本身有关的规则。例如,不存在数额为负的销售订单。使用 RDBMS,可将这些业务规则与数据库本身的完整性集成。


本书主要讲述了保存数据的数据库的概念以及向数据库输入和从中提取数据的最好方法,这是本书全部内容的基础。本章概述了本书其余的内容,所介绍的内容将涵盖本书后面的章节,为学习后面的内容提供一个指导。本章内容包括∶


● 数据库对象


● 数据类型


● 保证数据完整性的其他数据库概念


1.1 数据库对象概述


RDBMS(如 SOL Server)包含许多对象。对于Microsoft 所认定的可称为对象(或不能称为对象)的事物是否满足对象的标准定义,这里不做深究,但是对于 SQL Server 来说,它常包括以下重要的数据库对象。


● 数据库


● 事务日志


● 索引


● 文件组


● 数据库关系图


● 视图


● 存储过程


●用户自定义函数


● 用户


● 角色


● 程序集


● 表●


报表


● 全文目录


● 用户自定义数据类型


1.1.1 数据库对象


在特定 SOL Server 中,数据库实际上是最高层对象(从技术角度来说,服务器本身可以看作一个对象,但从实际"编程"的角度看,不能称其为对象,因此本书不作深究)。在 SOL Server中,大部分其他对象(但不是所有)为数据库对象的子对象。


提示∶


如果熟悉 SQL Server,您就可能要问∶"登录名或 SQLAgent任务发生了什么变化?"SQL Server有其他一些对象(如前面所列的)用于支持数据库。除了链接服务器和 Integration Services程序包之外,这些对象主要由数据库管理员管理,因此在设计和编程时通常不需要多作考虑。它们通过 SQL 管理对象(SQL Management Object,SMO)进行编程,不过这一内容超出了本书范围。尽管也有例外之处,但作者通常将它们视为高级内容,将留到高级版中作介绍。


数据库通常至少包括一组表对象,一般也包括其他一些对象,如存储过程和视图。存储过程和视图是对保存在数据库表中的数据的特定分组。


在一个数据库中可以存储什么类型的表,而在另一数据库中又可以存储什么类型的表呢?这个问题将在本书的后面章节详细讨论,现在可以简单地认为∶ 属于同一系统或明显相关的数据要存储在同一数据库中。RDBMS(如 SQL Server)在一个服务器上可能有多个用户数据库,当然也可能只有一个用户数据库。单个 SQL Server 上可容纳多少数据库的决定因素有容量(CPU能力、磁盘 I/O 限制、内存等)、自主权(您希望某个人具有系统所在的服务器的管理权,而其他人也具有另一不同服务器的管理权)或者仅仅是您公司或客户具有多少数据库。有些服务器仅有一个产品数据库,而其他服务器则有多个数据库。另外记住∶目前仍在生产的任何版本的 SOL Server(SOL Server2000 被取代之前已使用了5 年之久,因此假设大部分软件店有该版本或更高版本的 SQL Server 销售),都可以在同一个物理服务器上有 SQL Server 的多个实例,并有单独的登录和管理权限。


提示∶


有人会问∶"能否在同一服务器上安装不同版本的 SQL Server,如 SQL Server 2005 和 SQL Server 2008?"答案是肯定的。可以将 SOL Server 2005 和 SOL Server 2008 混合安装。本书不推荐采用这种配置,但是如果有需要的话,可以这样安装。


安装好的 SQL Server 第一次启动时至少包括 4 个系统数据库∶


●master


●model


●msdb


●tempdb


安装了以上所有数据库的服务器才能正常运行(事实上,如果缺少其中任意一个数据库,服务器都无法运行)。根据安装选项的不同,服务器也会不同,可能包括以下样本数据库∶


● ReportServer(为 Reporting Server 配置和模型存储需求提供服务的数据库)


● ReportServerTempDB(用于 Reporting Server 的工作数据库)


● AdventureWorks2008(样本数据库)


● AdventureWorksLT2008 (样本数据库的轻量级新版本)


● AdventureWorksDW 2008(用于 Analysis Services 的样本)


除系统安装的样本数据库外,还可参考一些老版本的样本数据库(通过网络搜索或是其他教程)。

pubs


●Northwind


提示∶


在本书前面的版本中,作者大量使用 了老版本的样本数据库。遗憾的是,由于无法保证这些样本数据库一直可供下载,因此作者选择采用新样本数据库。新的 AdventureWorks2008 样本数据库当然更加健壮,并提供了可在 SOL Server 2008 轻松利用的任何示例,但问题在于复杂性。


AdventureWorks2008 数据库对于数据库培训来说是极其复杂的。其功能可能只在个案中使用,并且是用作主要特性。因此,作者认为 AdventureWorks2008 并不一定可用作其他类似应用程序中的模板。


1.master 数据库


任意 SQL Server 都有 master 数据库,而不管其是哪一版本或是自定义修改的。master 数据库保存一组特殊的表(系统表)用于系统的总体控制。例如在服务器上新建一数据库,则在 master数据库中的 sysdatabases 表中将加入该项。所有扩展的存储过程和系统存储过程都存储在 master数据库中,而不论该存储过程是使用干哪一数据库。既然几,平所有描述服务器的信息都存储于 master 数据库,显然,该数据库对于系统至关重要,不能删除它。


过去,系统表(包括 master 数据库中的)总在必要时提供系统配置信息,如某些对象在对其执行操作之前是否存在。Microsoft 多年来一直告诫我们不要直接使用系统表,但由于几乎没有其他选择,大部分开发人员忽视了这一劝告。但所幸的是,Microsoft 通过系统和信息模式视图的形式提供了其他选择;现在可在需要时直接利用这些视图获取系统元数据。



【下载地址】

链接:https://pan.baidu.com/s/1OHhA4cUKXEh7v0FyPKHzVw

提取码:awsc


相关文章


SQL Server 2008编程入门经典(第三版)

它是在对 SQL Server 7.0版本重新设计的基础上建立的———提供了单独的日期和时间数据类型,以及地理空间支持。本书着重解决各层次开


文章热度: 166291
文章数量: 333
推荐阅读

FlashFXP绿色版网盘下载,附激活教程 1839

FlashFxp百度网盘下载链接:https://pan.baidu.com/s/1MBQ5gkZY1TCFY8A7fnZCfQ。FlashFxp是功能强大的FTP工具

Adobe Fireworks CS6 Ansifa绿色精简版网盘下载 1607

firework可以制作精美或是可以闪瞎眼的gif,这在广告领域是需要常用的,还有firework制作下logo,一些原创的图片还是很便捷的,而且fireworks用法简单,配合dw在做网站这一块往往会发挥出很强大的效果。百度网盘下载链接:https://pan.baidu.com/s/1fzIZszfy8VX6VzQBM_bdZQ

navicat for mysql中文绿色版网盘下载 1652

Navicat for Mysql是用于Mysql数据库管理的一款图形化管理软件,非常的便捷和好用,可以方便的增删改查数据库、数据表、字段、支持mysql命令,视图等等。百度网盘下载链接:https://pan.baidu.com/s/1T_tlgxzdQLtDr9TzptoWQw 提取码:y2yq

火车头采集器(旗舰版)绿色版网盘下载 1738

火车头采集器是站长常用的工具,相比于八爪鱼,简洁好用,易于配置。火车头能够轻松的抓取网页内容,并通过自带的工具对内容进行处理。站长圈想要做网站,火车头采集器是必不可少的。百度网盘链接:https://pan.baidu.com/s/1u8wUqS901HgOmucMBBOvEA

Photoshop(CS-2015-2023)绿色中文版软件下载 1858

安装文件清单(共46G)包含Window和Mac OS各个版本的安装包,从cs到cc,从绿色版到破解版,从安装文件激活工具,应有尽有,一次性打包。 Photoshop CC绿色精简版 Photoshop CS6 Mac版 Photoshop CC 2015 32位 Photoshop CC 2015 64位 Photoshop CC 2015 MAC版 Photoshop CC 2017 64位 Adobe Photoshop CC 2018 Adobe_Photoshop_CC_2018 Photoshop CC 2018 Win32 Photoshop CC 2018 Win64

知之

知之平台是全球领先的知识付费平台。提供各个领域的项目实战经验分享,提供优质的行业解决方案信息,来帮助您的工作和学习

使用指南 建议意见 用户协议 友情链接 隐私政策 Powered by NOOU ©2020 知之