《数据库基础与应用》教学辅导1

更新时间:2024-04-06 14:12:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

浙 江 广 播 电 视 大 学

《数据库基础与应用》教学辅导1

第3章 SQL Server概述

学习目标

了解:

– SQL Server的发展历程和主要特性; – SQL Server 2000的各个版本及功能。 理解:

– SQL Server 2000各个版本的安装环境需求。 掌握:

– SQL Server 2000的安装步骤;

– SQL Server 2000中的工具及其功能。

SQL Server概述

3.1 SQL Server概述

3.2 SQL Server 2000的版本与安装 3.3 SQL Server 2000的工具

3.1 SQL Server概述

3.1.1 SQL Server的发展历程

SQL Server的发展历程要追溯到20世纪80年代。它最初由Microsoft、Sybase和Ashton-Tate三家公司共同开发,于1989年推出了基于OS/2操作系统的SQL Server 1.0。 后来Aston-Tate公司退出了该产品的开发,Microsoft和Sybase先后发布了SQL Server 1.1,SQL Server1.11等版本。

1993年,Microsoft和Sybase将SQL Server移植到Microsoft公司的Windows NT平台上,SQL Server for Windows NT 3.1(SQL Server 4.2)版本就是两家公司共同开发的基于Windows NT平台的产品。

3.1 SQL Server概述

1994年,Microsoft公司和Sybase公司在SQL Server的开发方面分道扬镳,各自开发自己的SQL Server。Microsoft公司专注于Windows NT平台上的SQL Server开发,而Sybase公司则致力于UNIX平台上的SQL Server的开发。

1995年,Microsoft公司发布了SQL Server 6.0版本,该版本在性能和重要的特性上都得到了增强。SQL Server 6.0是完全由Microsoft公司开发的第一个SQL Server版本。

1996年,Microsoft公司发布了SQL Server 6.5版本,该版本具有速度快、功能强、易使用等优点。

1998年,Microsoft公司推出了SQL Server 7.0版本,该版本对核心数据库引擎进行了重大改写,使得 SQL Server 7.0在操作上更加简单、易用。

2000年,Microsoft公司发布了具有里程碑意义的SQL Server 2000版本,该版本在可扩展性和可靠性上有了很大的改进,另外它还引入了联机分析处理(OLAP),与Internet的紧密结合,卓越的管理工具、开发工具和分析工具。

3.1 SQL Server概述

2005年,Microsoft公司发布了SQL Server 2005版本,该版本引入了.NET Framework,提供商业智能的工具平台。

2008年,Microsoft公司发布了迄今为止SQL Server的最高版本SQL Server 2008,该版本以处

理目前能够采用的多种不同的数据形式为目的,通过提供新的数据类型和使用语言集成查询,使SQL Server数据库更加实用、安全。

本书所讲述的Microsoft SQL Server 2000,是一个关系型数据库管理系统,是目前市场中使用最普遍的产品,也是Microsoft SQL Server目前版本中非常稳定和成熟的产品。

3.1 SQL Server概述

3.1.2 SQL Server 2000的主要特性 1.客户机/服务器体系结构 2.主要特点

– (1)图形化用户界面 – (2)对Internet的支持 – (3)支持不同的开发平台 – (4)与Windows系统集成 – (5)企业级数据库功能 – (6)可伸缩性和可用性 – (7)数据仓库

3.1 SQL Server概述

3.1.2 SQL Server 2000的主要特性 3.SQL Server 2000新特点

– (1 )支持多个实例

– (2 )增加了三种数据类型 – (3 )用户自定义函数 – (4 )其他增强功能

3.2 SQL Server 2000的版本与安装

任务描述:SQL Server版本较多,安装过程比较复杂,安装之前的准备工作是正确安装系统的基础,在安装过程中进行正确配置才能确保系统正常运行。本任务以Windows 2003操作系统为例,介绍SQL Server 2000企业版的安装过程。

任务目标:掌握SQL Server的安装环境需求和安装步骤。

3.2 SQL Server 2000的版本与安装

3.2.1 SQL Server 2000的版本

SQL Server 2000版本较多,用户在使用SQL Server 2000前,应先了解SQL Server 2000各个版本的功能及应用范围。

– 1)SQL Server 2000企业版。支持 SQL Server 2000中的所有可用功能。 – 2)SQL Server 2000标准版。作为小型工作组或部门的数据库服务器使用。 – 3)SQL Server 2000个人版。用于单机系统或客户机。

– 4)SQL Server 2000开发版。用于程序员开发应用程序,这些程序需要SQL Server 2000 作为数据存储设备。

– 5)SQL Server 2000企业评估版。仅用于评估SQL Server功能。

– 此外,SQL Server 2000还有桌面引擎(Desktop Engine)和Windows CE版,用户可以根据实际情况选择所要安装的SQL Server 2000版本。

3.2 SQL Server 2000的版本与安装

3.2.2 SQL Server 2000的安装环境需求 1.硬件需求

SQL Server 2000安装的硬件最低要求如表3-1所示。

3.2 SQL Server 2000的版本与安装

2.操作系统需求

3.2 SQL Server 2000的版本与安装

3.2.3 SQL Server 2000的安装 1.安装前的准备

为了确保安装顺利进行,安装前要充分做好以下准备工作:

– 1)确保计算机满足SQL Server 2000的系统需求。

– 2)了解SQL Server的安装选项,并在安装过程中做适当的选择。 – 3)确定SQL Server文件安装位置。 – 4)用系统管理员帐号登录操作系统。 – 5)关闭所有和SQL Server相关的服务。包括所有使用ODBC(开放式数据库连接)的服务,如Microsoft Internet Information Services(IIS)。

3.2 SQL Server 2000的版本与安装

2.SQL Server 2000安装步骤

1)将SQL Server 2000光盘放入光驱,运行autorun.exe程序,出现版本选择界面

3.2 SQL Server 2000的版本与安装

2)单击―安装 SQL Server 2000简体中文企业版‖,进入安装组件选择界面

3.2 SQL Server 2000的版本与安装

3)单击―安装 SQL Server 2000组件‖,进入安装服务选择界面

3.2 SQL Server 2000的版本与安装

4)单击―安装数据库服务器‖选项,进入―欢迎‖对话框

3.2 SQL Server 2000的版本与安装

5)单击―下一步‖按钮,进入―计算机名‖对话框

3.2 SQL Server 2000的版本与安装

6)选择―本地计算机‖选项,单击―下一步‖按钮,进入―安装选择‖对话框

3.2 SQL Server 2000的版本与安装

7)选择―创建新的SQL Server实例,或安装客户工具‖选项,单击―下一步‖按钮,进入―用户信息‖对话框。

3.2 SQL Server 2000的版本与安装

8)在―用户信息‖对话框中输入用户信息,单击―下一步‖按钮,进入―软件许可证协议‖对话框。

3.2 SQL Server 2000的版本与安装

9)单击―是‖按钮,进入―安装定义‖对话框

3.2 SQL Server 2000的版本与安装

10)在―安装定义‖对话框中,选择―服务器和客户端工具‖选项,单击―下一步‖按钮,进入―实例名‖对话框 。

3.2 SQL Server 2000的版本与安装

11)在―实例名‖对话框中选择―默认‖复选框,单击―下一步‖按钮,进入―安装类型‖对话框。

3.2 SQL Server 2000的版本与安装

12)在―安装类型‖对话框中,选择―典型‖选项,输入程序文件和数据文件的目的文件夹,再单击―下一步‖按钮,进入―服务帐户‖对话框。

3.2 SQL Server 2000的版本与安装

13)在―服务帐户‖对话框中,选择―对每个服务使用同一帐户。自动启动SQL Server服务‖,同时在―服务设置‖选项中选择―使用本地系统帐户‖,单击―下一步‖按钮,进入―身份验证模式‖对话框 。

3.2 SQL Server 2000的版本与安装

14)在―身份验证模式‖对话框中,选择―混合模式‖,并为系统默认登录帐号sa设置密码,单击―下一步‖按钮,进入―开始复制文件‖对话框。

3.2 SQL Server 2000的版本与安装

15)单击―下一步‖按钮,开始复制文件,文件复制完后会进入―选择许可模式‖对话框。

3.2 SQL Server 2000的版本与安装

16)在―选择许可模式‖对话框中选择―每客户‖选项并设置好数量,单击―继续‖按钮,进入―安装完毕‖对话框

17)单击―完成‖按钮,软件安装完毕。

3.3 SQL Server 2000的工具

任务描述:SQL Server 2000的强大功能主要通过它的一系列工具来实现,掌握工具的使用可以更加娴熟地操作SQL Server 2000。本任务简要介绍SQL Server 2000的常用工具的功能和简单操作。

任务目标:掌握SQL Server 2000的工具的使用。

3.3 SQL Server 2000的工具

3.3.1 服务管理器

SQL Server 2000系统服务有:SQL Server、SQL Server Agent、Distributed Transaction Coordinator。用户在使用SQL Server系统之前,必须启动SQL Server某项系统服务。SQL Server服务管理器负责启动、暂停和停止SQL Server的系统服务。启动服务管理器的步骤如下。

– 1)选择―开始‖→―程序‖→―Microsoft SQL Server‖→―服务管理器‖命令,启动服务管理器,如图3-17所示。

– 2)在―SQL Server服务管理器‖对话框中,可以启动、暂停、停止SQL Serve服务器上的系统服务。

3.3 SQL Server 2000的工具 3.3 SQL Server 2000的工具

3.3.2 企业管理器

企业管理器是一个功能非常强大的工具,也是在实际应用中使用最多、最重要的工具。它主要用于配置SQL Server系统环境,创建和管理所有SQL Server对象。启动企业管理器的步骤如下。

– 1)选择―开始‖→―程序‖→―Microsoft SQL Server‖→―企业管理器‖命令,启动企业管理器工具。

– 2)展开企业管理器工具,如图3-18所示。

– 3)在―SQL Server企业管理器‖窗口中,可以管理所有SQL Server对象。

3.3 SQL Server 2000的工具

3.3.3 查询分析器

查询分析器是一个交互执行SQL语句和脚本的图形工具,主要功能是编辑T-SQL语句,然后发送到服务器并显示从服务器返回的结果。 启动查询分析器的步骤如下。

1)选择―开始‖→―程序‖→―Microsoft SQL Server‖→―查询分析器‖命令,弹出―连接到SQL Server‖对话框,如图3-19所示。

2)在―连接到SQL Server‖对话框中,选择好服务器和身份验证模式,打开―SQL Server查询分析器‖窗口,如图3-21所示。

3.3 SQL Server 2000的工具

3.3.4 联机丛书

联机丛书工具主要提供SQL Server的帮助信息。启动联机丛书的步骤如下:选择 ―开始‖→―程序‖→―Microsoft SQL Server‖→―联机丛书‖命令,打开―SQL Server联机丛书‖窗口,如图3-23所示。

本 章 小 结

本章是对SQL Server的概述。首先讲述了SQL Server的发展历程和主要特性,接着介绍了SQL Server 2000的各版本、安装环境要求,并重点介绍了SQL Server 2000企业版的安装过程,最后介绍了SQL Server 2000的工具及功能。

第4章 数据库的管理与使用

学习目标

了解:

– 关系数据库的组织结构和存储方式 – 备份和恢复的相关概念 理解:

– 查看、修改、删除数据库的方法 – 分离数据库和附加数据库的方法 掌握:

– 创建数据库的方法

– 备份和恢复数据库的方法

数据库的管理与使用

4.1 数据库存储结构 4.2 数据库操作

4.3 数据库的备份与恢复 4.4 数据库的分离与附加

4.1 数据库存储结构

任务描述:SQL Server采用T-SQL语言的关系数据库管理系统,了解它的数据组织结构和存储方式,对使用、管理和维护数据库是十分重要的。

任务目标:了解关系数据库的数据组织结构和存储方式。

4.1 数据库存储结构

4.1.1 数据库存储结构

SQL Server在存储数据时,有两种存储结构:逻辑存储结构和物理存储结构。 (1)逻辑存储结构

– 逻辑存储结构指的是数据库是由哪些性质的信息所组成,如表、视图、索引等。SQL Server的数据库不仅存储数据,所有与数据处理操作相关的信息都存储在数据库中。 (2)物理存储结构

– 物理存储结构指的是数据库文件如何在磁盘上存储,数据库在磁盘上是以文件为单位存储的,由数据库文件和事务日志文件组成。一个数据库至少应该包含一个数据库文件和一个事务日志文件。

4.1 数据库存储结构

物理数据库和逻辑数据库。 1.物理数据库

– 物理数据库是指数据库文件在磁盘上的物理存储,对应的存储结构是物理存储结构。 SQL Server数据库有三种类型的文件。 (1)主数据文件

主数据文件的文件扩展名是.mdf。 (2)次要数据文件

次要数据文件的文件扩展名是.ndf。

(3)日志文件

日志文件的文件扩展名是.ldf。 2.逻辑数据库

– 从逻辑上看一个整体的数据库称为逻辑数据库,用逻辑数据库名加以标记,其对应的存储结构为逻辑存储结构。

4.1 数据库存储结构

4.1.2 文件组

文件组也分为主文件组(Primary File Group)和次文件组(Secondary File Group)。 (1)主文件组

– 主文件组包含主数据文件和没有明确分配给其他文件组的文件。系统表的所有页均分配在主文件组中。 (2)次文件组

– 也称为用户定义文件组,是通过在Create DataBase或Alter DataBase 语句中使用Filegroup关键字指定的文件组。

4.1 数据库存储结构

4.1.3 系统数据库

– SQL Server 安装完毕后默认安装了master 、tempdb 、model 、msdb 、Northwind 、

pubs 这六个库,其中Northwind 、pubs 是示例数据库,其他都是系统数据库。

4.1 数据库存储结构

1.master数据库

master数据库记录SQL Server系统的所有系统级别信息。这些系统信息主要有:登录帐户和系统配置设置、所有其他的数据库(其中包括数据库文件的位置)、SQL Server的初始化信息等。master数据库始终有一个可用的最新master数据库备份。

4.1 数据库存储结构

2.tempdb数据库

tempdb数据库保存所有的临时表和临时存储过程。它满足其他的临时存储要求,例如存储SQL Server生成的工作表。tempdb数据库是全局资源,所有连接到系统的用户的临时表和存储过程都存储在该数据库中。tempdb数据库在SQL Server每次启动时都重新创建,因此该数据库在系统启动时总是空的。临时表和存储过程在连接断开时自动清除,当系统关闭后将没有任何连接处于活动状态,因此tempdb数据库中的内容不会从SQL Server的一个会话保存到另一个会话。

4.1 数据库存储结构

3.model数据库

model数据库用作在系统上创建的所有数据库的模板。当发出Create DataBase语句时,新数据库的第一部分通过复制model数据库中的内容创建,剩余部分由空页填充。由于SQL Server每次启动时都要创建tempdb数据库,model数据库必须一直存在于SQL Server系统中。

4.1 数据库存储结构

4.msdb数据库

msdb数据库供SQL Server代理程序调度警报和作业以及记录操作时使用。 5.Northwind数据库

Northwind数据库包含一个名为 Northwind Traders 的虚构公司的销售数据,该公司从事世界各地的特产食品进出口贸易。 6.pubs数据库

pubs数据库以一个图书出版公司为模型,用于演示SQL Server数据库中可用的许多选项。该数据库及其中的表经常在文档内容所介绍的示例中使用。

4.2 数据库操作

任务描述:为广播电视大学学生成绩管理系统创建后台数据库RtvuStu数据库,该数据库的主数据文件逻辑名称为RtvuStu_data,物理文件名为D:\\DataBase\\RtvuStu_data.mdf,初始大小为10MB,最大空间为无限大,增长速度为10%;数据库的日志文件逻辑名称为RtvuStu_log,物理文件名为D:\\DataBase\\ RtvuStu_log.ldf,初始大小为1MB,最大尺寸为5MB,增长速度为1MB。

创建好RtvuStu数据库,使用企业管理器和T-SQL语句对数据库进行维护和管理。

任务目标:掌握使用企业管理器、向导和T-SQL语句创建数据库,能够使用企业管理器和T-SQL语句进行数据库的维护和管理。

4.2 数据库操作

4.2.1 数据库的创建

在SQL Server 中创建数据库可以使用三种方法

– 企业管理器 – 向导

– T-SQL 语句

4.2 数据库操作

1.使用企业管理器创建数据库

使用企业管理器创建RtvuStu数据库的步骤如下:

– 1)选择―开始‖→―程序‖→―Microsoft SQL Server‖→―企业管理器‖命令,打开企业管理器。 – 2)展开―SQL Server组‖,再展开要为其创建数据的―服务器‖节点。 – 3)右击―数据库‖选项,从弹出的快捷菜单中选择―新建数据库‖命令,如图4-1所示,打开―数据库属性‖对话框。 – 4)在―数据库属性‖对话框中选择―常规‖选项卡,在―名称‖文本框中输入数据库名―RtvuStu‖,如图4-2所示。

4.2 数据库操作

5)在―数据库属性‖对话框中选择―数据文件‖选项卡,如图4-3所示,对―数据库文件‖和―文件属性‖两栏数据进行设置。

在―数据库属性‖对话框的―文件属性‖栏中设置初始大小为10MB,如图4-3所示。数据库文件的大小可以是固定的,也可以是自动增长的。这里选中―文件属性‖中的―文件自动增长‖,―文件增长‖选择―按百分比‖,速度为―10‖。―最大文件大小‖选择―文件增长不受限制‖。

4.2 数据库操作

6)设置完数据文件后,在―数据库属性‖对话框中选择―事务日志‖选项卡,如图4-5所示。这里逻辑文件名采用默认值―RtvuStu_log‖,修改文件存储路径,单击按钮打开―查找数据库文件‖对话框,选择存储路径为D:\\DataBase,文件名为默认值―RtvuStu_log.ldf‖。 设置初始大小为1MB。选中文件属性中的―文件自动增长‖,―文件增长‖选择―按兆字节‖单选按钮,速度为―1‖。―最大文件大小‖选择―将文件增长限制为[MB]‖单选按钮,输入大小为―5‖。

4.2 数据库操作 4.2 数据库操作

7)单击―确定‖按钮,完成数据库的创建。此时可以在企业管理器中看到此数据库,如图4-6所示。

4.2 数据库操作

2.使用向导创建数据库 1)在企业管理器中选择菜单―工具‖→―向导‖命令,打开―选择向导‖对话框,如图4-7所示。展开―数据库‖节点,选择―创建数据库向导‖选项,弹出―欢迎使用创建数据库向导‖对话框,如图4-8所示。

4.2 数据库操作 4.2 数据库操作

2)在―欢迎使用创建数据库向导‖对话框中单击―下一步‖按钮,打开―命名数据库并指定它的位置‖对话框,如图4-9所示。指定数据库名称为―RtvuStu‖,数据库文件位置和事务日志文件位置为―D:\\DataBase\\‖。

4.2 数据库操作

3)在―命名数据库并指定它的位置‖对话框中单击―下一步‖按钮,打开―命名数据库文件‖对话框,如图4-10所示,指定数据库文件名为―RtvuStu_data‖,初始大小为―10‖。

4.2 数据库操作

4)在―命名数据库文件‖对话框中单击―下一步‖按钮,打开―定义数据库文件的增长‖对话框,如图4-11所示。在―数据文件自动增长‖框中选中―按百分比增长文件‖并输入―10‖,最大文件大小选中―文件增长不受限制‖。

4.2 数据库操作

5)在―定义数据库文件的增长‖对话框中单击―下一步‖按钮,打开―命名事务日志文件‖对话框,如图4-12所示。指定数据库文件名为―RtvuStu_log‖,初始大小为―1‖。

4.2 数据库操作

6)在―命名事务日志文件‖对话框中单击―下一步‖按钮,打开―定义事务日志文件的增长‖对话框,如图4-13所示。在―数据文件自动增长‖框中选中―按兆字节为单位增长文件‖并输入―1‖,最大文件大小选中―文件增长的最大值‖并输入―5‖。

4.2 数据库操作

7)在―定义事务日志文件的增长‖对话框中单击―下一步‖按钮,打开―正在完成创建数据库向导‖对话框,如图4-14所示。单击―完成‖按钮,完成数据库的创建。

4.2 数据库操作

3.使用T-SQL命令创建数据库

Create DataBase命令用来创建数据库和存储该数据库的文件,语法格式如下:

4.2 数据库操作

参数说明如下。

1)数据库名:数据库的名称,最长为128个字符。

2)On:指定定义存储数据库数据的数据文件,该关键字必须存在。 3)Primary:该选项是一个关键字,指定主文件组中的主数据文件。 4)Log On:指明定义存储事务日志文件的日志文件。 5)Name:指定数据库的逻辑名称,这是在SQL Server系统中使用的名称,是数据库在SQL Server中的标识符。

6)Filename:指定数据库所在文件的操作系统文件名称和路径,该操作系统文件名和NAME的逻辑名称一一对应。该路径必须存在,并且系统文件名和路径要用单引号引起来。

7)Size:指定数据库的初始容量大小。数据库文件不能小于1MB。如果主文件没有指定初始大小,数据库选取model数据库中的主文件大小;如果事务日志文件没有指定初始大小,则默认为1MB。

8)Maxsize:指定操作系统文件可以增长到的最大尺寸。如果该值指定为Unlimited,表明所定义的文件的增长无容量限制。

9)Filegrowth:指定文件每次增加容量的大小,当指定数据为0时,表示文件不增长。该选项可以选择MB、KB和百分比指定。

4.2 数据库操作

【例4-1】 由于SQL Server规定不允许数据库重名,所以在重新创建―RtvuStu‖数据库之前,必须要将刚刚创建的数据库删除,删除数据库的操作步骤见4.2.3节。使用Create DataBase命令创建数据库的步骤如下。 1)删除―RtvuStu‖数据库。

2)在企业管理器的菜单栏中选择菜单―工具‖→―SQL查询分析器‖命令,打开―SQL查询分析器‖,在

其编辑窗口输入语句。

3)命令输入完毕后,按―F5‖键或者单击工具栏中的―运行‖按钮,执行该命令。在消息窗口中显示―Create DataBase进程正在磁盘?RtvuStu_data‘上分配10.00MB的空间。Create DataBase进程正在磁盘?RtvuStu_log‘上分配1.00MB的空间。‖的信息

4.2 数据库操作

Create DataBase RtvuStu On Primary

(Name=RtvuStu_data, Filename='D:\\DataBase\\RtvuStu_data.mdf', Size=10, Maxsize=unlimited, Filegrowth=10%) Log On (Name=RtvuStu_log, Filename='D:\\DataBase\\RtvuStu_Log.ldf', Size=1, Maxsize=5, Filegrowth=1)

4.2 数据库操作

4.2.2 数据库的查看和修改

创建好数据库之后,如果要查看或者修改数据库的信息该如何操作呢?SQL Server 提供了两种方法:

– 利用企业管理器; – 使用T-SQL 语句。

4.2 数据库操作

1.使用企业管理器查看和修改数据库

1)打开企业管理器,依次展开―服务器组‖→―服务器‖→―数据库‖节点。

2)右键单击要查看的数据库名,在弹出的快捷菜单中选择―属性‖命令,如图4-16所示。打开―RtvuStu属性‖对话框,如图4-17所示。

3)在―RtvuStu属性‖对话框中可以通过单击―常规‖、―数据文件‖、―事务日志‖、―选项‖、―权限‖选项卡,来查看和修改数据库的相关信息。

4.2 数据库操作 4.2 数据库操作

2.使用T-SQL语句查看数据库

使用T-SQL语句查看数据库信息的语法格式如下: Execute sp_helpdb 数据库名

其中,Execute可以缩写为Exec。当省去―数据库名‖时,表示查看所有数据库的定义信息。 【例4-2】 查看―RtvuStu‖数据库的信息和所有数据库的信息。 在查询分析器输入如下T-SQL语句: Exec sp_helpdb RtvuStu Exec sp_helpdb

4.2 数据库操作

3.使用T-SQL语句修改数据库 (1)修改数据库的名称

使用T-SQL语句修改数据库名称的语法格式如下:

Execute sp_renamedb 数据库旧名,数据库新名

需要注意的是更改数据库的名字一定要有数据库管理员或数据库所有者的权限。

4.2 数据库操作

(2)修改数据库的属性

使用T-SQL语句修改数据库信息的语法格式如下: Alter DataBase 数据库名

{Add File<文件的定义>[,…n] [to filegroup 文件组名] |Add Log File <文件的定义>[,…n]

|Remove File 逻辑文件名 [with delete] |Modify File <文件的定义> |Modify Name=新的数据库名 |Add Filegroup 文件组名 |Remove Filegroup 文件组名 |Modify Filegroup 文件组名

{文件组名的属性|name=新的文件组名}} <文件的定义>格式如下: (Name=数据文件的逻辑名, [Newname=新的逻辑文件名]

[,Filename='数据文件的物理名'] [,Size=文件的初始大小] [,Maxsize=最大容量]

[,Filegrowth=文件空间的增长量] )

4.2 数据库操作

参数说明如下。

1)Add File:添加文件。

2)to filegroup:将指定文件添加到指定的文件组中。 3)Add Log File:添加日志文件。

4)Remove File:从数据库系统表中删除文件描述并删除物理文件。只有在文件为空时才能删除。 5)Modify File:对给定的文件进行更改,更改选项包括Filename、Size、Maxsize、Filegrowth。一次只能更改这些属性中的一种。必须在<文件的定义>中指定Name,以标识要更改的文件。如果指定了Size,那么新大小必须比当前大小要大。只能为tempdb数据库中的文件指定Filename,而且新名称只有在Microsoft SQL Server重新启动后才能生效。

4.2 数据库操作

【例4-3】 要给―RtvuStu‖数据库添加一个文件名为―RtvuStu_data02‖的辅助文件,其物理文件名为―D:\\DataBase\\RtvuStu_data02.ndf‖,初始容量为5MB,最大容量是10MB,每次的增量为10%。

在查询分析器输入如下T-SQL语句:

Alter DataBase RtvuStu Add file (

name=RtvuStu_data02, filename='D:\\DataBase\\RtvuStu_data02.ndf', size=5, maxsize=10, filegrowth=10% )

4.2 数据库操作

4.2.3 数据库的删除

SQL Server提供了两种方法删除数据库:一种是利用企业管理器;一种是使用T-SQL语句。

4.2 数据库操作

1.使用企业管理器删除数据库

– 1 )打开企业管理器,依次展开― 服务器组‖ →― 服务器‖ →― 数据库‖ 节点。

– 2 )右键单击要删除的数据库名,在弹出的快捷菜单中选择― 删除‖ 命令,打开― 删除数

据库‖ 对话框,单击― 是‖ 按钮完成数据库的删除。

4.2 数据库操作

2.使用T-SQL语句删除数据库

使用T-SQL语句删除数据库信息的语法格式如下: Drop DataBase 数据库名

【例4-4】 要删除―RtvuStu‖数据库,只要在查询分析器里执行如下语句。 Drop DataBase RtvuStu

如果删除的数据库正在使用中,则无法执行删除命令。另外,数据库删除之后,数据库中的对象也将被删除,同时释放所占用的空间,数据库不能被恢复,所以要谨慎使用删除命令。

4.3 数据库的备份与恢复

任务描述:该任务要求为广播电视大学学生成绩管理系统备份―RtvuStu‖数据库。在磁盘上创建一个备份设备,备份设备的名称为―bk_RtvuStu‖,文件名为―D:\\DataBase\\bk_RtvuStu.bak‖。将数据库―RtvuStu‖备份到―bk_RtvuStu‖备份设备中,然后从―bk_RtvuStu‖备份设备中恢复数据库―RtvuStu‖。

任务目标:了解备份和恢复的相关概念,掌握备份和恢复数据库的方法。

4.3 数据库的备份与恢复

4.3.1 备份和恢复概述

在系统运行过程中,可能出现各种各样的故障,其中数据库的故障有两类。

1)第一类数据库故障:数据库已经被破坏,根本无法读取数据,或者数据库中大部分数据都有错误,此时数据库已经不能使用,只能报废。

2)第二类数据库故障:数据库未被破坏,但某些数据有错,此时数据库还能用,但必须改正其中的错误数据。

数据库备份是指对数据库结构、对象和数据的备份,以便数据库遭受破坏时能够修复数据库。数据库恢复是指将备份的数据库加载到数据库服务器中。

4.3 数据库的备份与恢复

1.故障还原模型 (1)简单模型

– 使用简单模型可以将数据库恢复到上次备份时的状态。事务日志不记录数据的修改操作,采用该模型时,进行数据库备份不能进行―事务日志备份‖和―文件或文件组备份‖。对于小型数据库或修改数据频率不高的数据库,通常采用简单模型。 (2)完全模型

– 默认采用完全还原模型,它使用数据库备份和日志备份,能够较为完全地防范故障。采用该模型,SQL Server事务日志记录了对数据进行的全部修改,因此能够将数据库还原到特定的记时点。 (3)大容量日志记录模型

– 该模型和完全模型类似,也是使用数据库备份和日志备份,不同的是事务日志只记录大量操作的结构,而不记录操作的过程,所以当出现故障时,虽然能够恢复全部数据,但是不能恢复数据库到特定的时间点。

4.3 数据库的备份与恢复

2.数据库备份方式

备份数据库的方式一共有四种,分别是数据库完全备份、数据库差异备份、事务日志备份、文件或文件组备份。 (1)数据库完全备份

– 数据完全库备份是指对数据库的完整备份,包括所有的数据以及数据库对象。

– 一般使用的场合:数据不是非常重要;通过批处理或其他方法,在数据库恢复之后可以很容易地重新实现在数据损坏前发生的修改;数据库变化的频率不大。 (2)数据库差异备份

– 数据库差异备份只记录自上次数据库备份后发生更改的数据。

– 一般使用的场合:自上次数据库备份后,数据库中只有相对较少的数据发生了更改;使用的是简单恢复模型,希望进行更频繁的备份,但不希望进行频繁的完整数据库备份;使用的是完全恢复模型或大容量日志记录恢复模型,希望用最少的时间在还原数据库时前滚事务日志备份。

4.3 数据库的备份与恢复

(3)事务日志备份

– 事务日志备份是指对数据库发生的事务进行备份,包括从上次进行事务日志备份、差异备份和数据库完全备份之后,所有已经完成的事务。

– 一般使用场合:不允许在最近一次数据库备份之后发生数据丢失或损坏现象;存储备份文件的磁盘空间很小或者留给进行备份操作的时间有限;准备把数据库恢复到发生失败的前一点;数据库变化较为频繁。 (4)文件或文件组备份

– 文件或文件组备份是指对数据库文件或文件夹进行备份,但不像完整的数据库备份那样同时也进行事务日志备份。

– 但是在使用文件或文件组进行恢复时,仍要求有一个自上次备份以来的事务日志备份来保证数据库的一致性,所以在进行文件或文件组备份后,应进行事务日志备份,否则在

文件或文件组备份中的所有数据库变化将无效。

4.3 数据库的备份与恢复

4.3.2 数据库的备份

完成数据库的备份主要有两种方法:一种是利用企业管理器;一种是使用T-SQL语句。

不管采用哪种方法,首先都需要找一种媒介来存储它,这个保存媒介的设备叫备份设备。备份设备在硬盘中是以文件的方式存储的。

4.3 数据库的备份与恢复

1.使用企业管理器备份数据库

– (1)创建备份设备

? 创建备份设备的步骤如下:

? 1)打开企业管理器,依次展开―服务器组‖→―服务器‖→―管理‖节点。 ? 2)右键单击―备份‖项,从快捷菜单中选取―新建备份设备‖命令,如图4-19所示。打开―备份设备属性—新设备‖对话框,如图4-20所示。

? 3)在―备份设备属性—新设备‖对话框中的名称处输入备份设备名称―bk_RtvuStu‖,文件名处更改备份设备存放的物理位置―D:\\DataBase\\bk_RtvuStu.bak‖,单击―确定‖按钮完成备份设备的创建。

4.3 数据库的备份与恢复 4.3 数据库的备份与恢复

1.使用企业管理器备份数据库 (2)备份数据库

– 备份数据库的步骤如下:

? 1)打开企业管理器,依次展开―服务器组‖→―服务器‖→―数据库‖节点。

? 2)右键单击要备份的数据库―RtvuStu‖,从快捷菜单中选择―所有任务‖→―备份数据库‖命令,如图4-21所示。打开―SQL Server备份‖对话框,如图4-22所示。

? 3)在―SQL Server备份‖对话框中―常规‖选项卡的―数据库‖项中选中―RtvuStu‖数据库,并选中―备份‖一项中的―数据库-完全‖单选按钮。

4.3 数据库的备份与恢复 4.3 数据库的备份与恢复

4)在―目的‖项中,单击―添加‖按钮,打开―选择备份目的‖对话框,如图4-23所示。选择―备份设备‖下拉框中的―bk_RtvuStu‖备份设备,单击―确定‖按钮,返回―SQL Server备份‖对话框。 5)在―SQL Server备份‖对话框中选择―选项‖选项卡,如图4-24所示,选择―完成后验证备份‖复选框,可以验证备份完成以后是否正确。

6)单击―确定‖按钮,开始备份。若备份成功,将弹出一个显示备份操作及其验证成功完成的信息框。

4.3 数据库的备份与恢复 4.3 数据库的备份与恢复

2.使用T-SQL语句备份数据库 (1)创建备份设备

创建备份设备的语法格式如下:

sp_addumpdevice '备份类型','逻辑名','物理名' 删除备份设备的语法格式如下:

sp_dropdevice '逻辑名'

【例4-5】 先删除备份设备bk_RtvuStu,然后使用T-SQL语句重新在磁盘上创建一个名称为bk_RtvuStu的备份设备,文件名为―D:\\DataBase\\bk_RtvuStu.bak‖。 在查询分析器里输入如下T-SQL语句:

Exec sp_dropdevice 'bk_RtvuStu'

Exec sp_addumpdevice 'disk','bk_RtvuStu',D:\\DataBase\\bk_RtvuStu.bak'

4.3 数据库的备份与恢复

(2)备份数据库

备份数据库的语法格式如下:

Backup DataBase 数据库名 to 备份设备(逻辑名) 备份事务日志备份的语法格式如下:

Backup Log 数据库名 to 备份设备(逻辑名)

【例4-6】 将数据库―RtvuStu‖备份到―bk_RtvuStu‖备份设备中。 在查询分析器里输入如下T-SQL语句:

Backup DataBase RtvuStu to bk_RtvuStu

4.3 数据库的备份与恢复

4.3.3 数据库的恢复

数据库备份后,一旦系统发生崩溃或者执行了错误的数据库操作(如将―RtvuStu‖的主文件和日志文件更名),可以从备份文件中恢复数据库。

完成数据库的恢复主要有两个方法,一种是利用企业管理器,一种是使用T-SQL语句。

4.3 数据库的备份与恢复

1.使用企业管理器恢复数据库

– 1)打开企业管理器,右击要恢复的数据库―RtvuStu‖,在弹出的快捷菜单中选择―所有任务‖→―还原数据库‖命令,打开―还原数据库‖对话框,如图4-27所示。 – 2)在―还原数据库‖对话框的―还原‖按钮组中选择―从设备‖单选按钮。 – 3)单击―选择设备‖按钮,弹出―选择还原设备‖对话框,如图4-28所示。

4.3 数据库的备份与恢复 4.3 数据库的备份与恢复

– 4)在―选择还原设备‖对话框中单击―添加‖按钮,弹出―选择还原目的‖对话框,如图4-29所示,选中―备份设备‖下拉框的备份设备―bk_RtvuStu‖,单击―确定‖按钮,返回―选择还原设备‖对话框。 – 5)在―选择还原设备‖对话框单击―确定‖按钮,返回―还原数据库‖对话框,选中单选按钮―还原备份集‖,再选中其中的―数据库—完全‖单选按钮。

– 6)单击―确定‖按钮,执行还原操作。出现―还原进度‖对话框,弹出―数据库的还原已经顺利完成‖消息框,说明还原完成。

4.3 数据库的备份与恢复

2.使用T-SQL语句恢复数据库 恢复数据库的语法格式如下:

Restore DataBase 数据库名 from 备份设 备(逻辑名)

【例4-7】 从bk_RtvuStu备份设备中恢复数据库RtvuStu。 在查询分析器里输入如下T-SQL语句: Restore DataBase RtvuStu from bk_RtvuStu

4.4 数据库的分离与附加

任务描述:SQL Server允许将数据库从一个服务器上分离出来,然后附加到另一台服务器上,这种操作称之为分离数据库和附加数据库。这是一种既快捷又方便的复制数据库的方法。分离数据库后,便将该数据库从SQL Server中删除,但是保存在组成该数据库的数据和事务日志文件中的数据完好无损,这些数据和事务日志文件可以用来将数据库转移到任何SQL Server服务器实例上。

该任务要求将广播电视大学学生成绩管理系统的RtvuStu数据库从SQL Server上分离,然后再将其附加到其他SQL Server服务器实例上。

任务目标:掌握分离数据库和附加数据库的方法。

4.4 数据库的分离与附加

4.4.1 数据库的分离

分离数据库的主要操作步骤如下:

1)打开企业管理器,右键单击要分离的数据库―RtvuStu‖,在弹出的快捷菜单中选择―所有任务‖→―分离数据库‖命令,打开―分离数据库‖对话框,如图4-30所示。

2)在―分离数据库‖对话框中,检查数据库的状态,如果是―数据库已就绪,可以分离‖,那么此时可以分离,单击―确定‖按钮,即可分离数据库。

4.4 数据库的分离与附加

将分离后的数据库附加到其他的服务器上,只需要将该数据库的主数据文件和事务日志文件复制到要附加该数据库的机器上(本例为了考虑实际操作环境,仍然在相同的机器上附加数据库),然后执行如下操作:

1)在附加该数据库的机器上打开企业管理器,右键单击―数据库‖节点,在弹出的快捷菜单中选择―所有任务‖→―附加数据库‖命令,打开―附加数据库‖对话框,如图4-31所示。

2)在―附加数据库‖对话框中单击按钮,打开―浏览现有文件‖对话框进行搜索,找到相应的要附加的数据库的MDF文件,单击―确定‖按钮,返回―附加数据库‖对话框。

3)在―附加为‖框内,输入附加后数据库的名称,默认为分离前的名称,选择数据库所有者,单击―确定‖按钮完成数据库的附加操作。

4.4 数据库的分离与附加

本 章 小 结

本章主要内容是数据库的创建、管理与维护。

– 首先讲述了数据库的存储结构,了解关系数据库的组织结构和存储方式; – 然后讲述了使用企业管理器、向导和T-SQL语句创建和管理数据库的方法; – 接着讲述备份和恢复的相关概念以及备份和恢复数据库的方法; – 最后讲述了分离数据库和附加数据库的方法。

第5章 数据表的管理与使用

学习目标

理解:

– 使用企业管理器和T-SQL命令管理表中内容 – 使用企业管理器管理和维护表结构 – 数据完整性的概念。 掌握:

– 使用企业管理器和T-SQL命令创建表 – 使用T-SQL命令管理和维护表结构 – 数据完整性的操作

数据表的管理与使用

5.1 数据表的操作 5.2 数据完整性

5.1 数据表的操作

任务描述:数据库建立后,要建立和管理数据表。本任务主要使用企业管理器和T-SQL语句进行―RtvuStu‖数据库中的学生信息表―Student‖、课程信息表―Course‖和成绩信息表―Results‖的操作和管理。

任务目标:掌握使用企业管理器和T-SQL语句创建数据库表;掌握管理表的内容,包括修改表结构、更改表名等;掌握表中数据的插入、修改和删除等操作。

5.1 数据表的操作

5.1.1 创建表

SQL Server 2000提供了两种创建表的方法 (1)使用企业管理器 (2)使用T-SQL命令。

5.1 数据表的操作

1.使用企业管理器创建数据表

1)选择―开始‖→―程序‖→―Microsoft SQL Server‖→―企业管理器‖命令,打开企业管理器。 2)展开―SQL Server组‖,再展开要为其创建数据的―服务器‖节点。

3)单击―数据库‖项,在左边窗口的树型目录中,展开要建表的数据库―RtvuStu‖。 4)右击―表‖选项,在弹出的快捷菜单中选择―新建表‖命令,如图5-1所示。

5)在出现的表设计器窗口中定义表结构,依次填写表中包含的列名、数据类型、长度。在―允许空‖部分设置该字段是否可以接受Null值,系统默认是―√‖,表示允许接受Null。若不允许字段为空(如学号字段S_ID),则可以单击―√‖将其去除,如图5-2所示。

5.1 数据表的操作

图5-1 使用企业管理器创建数据表

5.1 数据表的操作

图5-2 表设计器窗口

5.1 数据表的操作

6)单击工具栏上的―保存‖图标,在弹出的―选择名称‖对话框中,输入数据表的名称―Student‖,单击―确定‖按钮,如图5-3所示。

表被保存后,可以在任务列表中看到该表。双击该表名称弹出―表属性‖对话框,通过该对话框可以查看表的基本结构及其权限,如图5-4所示。

5.1 数据表的操作

2.使用T-SQL命令创建数据表

使用T-SQL语句在查询分析器中创建表,语法格式: Create Table 表名

{(列名 列属性 列约束)}[,…]

5.1 数据表的操作

1)打开企业管理器,在菜单栏中选择―工具‖→―SQL查询分析器‖命令,打开―SQL查询分析器‖窗口,在其编辑窗口输入如下语句: Use RtvuStu Go

Create Table Course

(C_ID char(8) primary key, Cname char(20), Credit tinyint ) Go

5.1 数据表的操作

2)命令输入完毕后,按―F5‖键或者单击工具栏中的―运行‖按钮,执行该命令。在消息窗口中显示―命令已成功完成‖的信息,如图5-5所示。

3)运行成功后,如果不能在―查询分析器‖的―对象浏览‖窗口中看到所创建的数据表,在―对象浏览‖窗口中单击鼠标右键,选择―刷新‖命令,就可以看到所创建的数据表了。

5.1 数据表的操作

5.1.2 修改表结构

SQL Server 2000提供了两种修改表结构的方法: (1)使用企业管理器; (2)使用T-SQL命令。

5.1 数据表的操作

1.使用企业管理器修改表结构

1)打开企业管理器,展开―SQL Server组‖,再展开要为其修改数据表结构的―服务器‖节点。 2)选中要修改的数据库,如―RtvuStu‖。

3)展开该数据库中的表节点,选中要修改的表,如―Student‖,单击鼠标右键,从弹出的快捷菜单中选择―设计表‖命令,随即打开的表设计窗口和创建表时所显示的表设计窗口相同,操作方法也相同,如图5-6所示。

5.1 数据表的操作

4)可以在表设计窗口中修改各个字段的定义,重新设置字段名、字段长度、是否允许为空、是否为标识等。

5)可以添加新字段、删除字段、修改各种约束等。如图5-7所示。 6)修改完成后,进行保存。

5.1 数据表的操作

5.1.3 删除表

SQL Server 2000提供了两种删除表的方法 (1)使用企业管理器 (2)使用T-SQL命令。

5.1 数据表的操作

1.使用企业管理器删除数据表

1)打开企业管理器,展开SQL Server实例,展开―数据库‖,展开要删除的表所属的数据库,如―RtvuStu‖。

2)选中―表‖,在企业管理器窗口的右边将弹出该数据库中所包含的所有系统表和用户表,选中要删除的表,按住―Ctrl‖键可以进行多选,单击鼠标右键,选择―删除‖命令,完成删除表操作,如图5-8所示。

5.1 数据表的操作

2.使用T-SQL语句删除数据表

使用T-SQL语句删除数据表的语法格式如下: Drop Table 表名[,…n]

5.1 数据表的操作

5.1.4 表数据管理

表中的数据管理方法一般有两种: (1)使用企业管理器 (2)使用T-SQL语句。

5.1 数据表的操作

1.使用企业管理器向表中插入数据

1)打开企业管理器,展开―SQL Server组‖,再展开―服务器‖节点,选中―RtvuStu‖数据库。 2)展开该数据库中的表节点,选中―Student‖表,单击鼠标右键,从弹出的快捷菜单中选择―打开表‖→―返回所有行‖命令,如图5-9所示,随即打开数据录入窗口。在开始录入前,去掉外键约束,以免录入数据时出现违背数据参照完整性的错误。

5.1 数据表的操作

3)录入数据后,关闭窗口,系统自动保存数据。数据录入完毕之后的效果如图5-10所示。

5.1 数据表的操作

2.使用T-SQL语句向表中插入数据

使用Insert语句可以向数据表中插入数据格式如下:

Insert [Into] 表|视图[(列名列表)] Values (值列表)

5.1 数据表的操作

【例5-3】 打开查询分析器,使用T-SQL命令输入一条学生记录,输入以下内容: Use RtvStu Go

Insert student

Values('2009133030088','张三','男',1/2/1972,'计算机系')

5.1 数据表的操作

3.使用企业管理器修改数据表

1)打开企业管理器,展开SQL Server实例,接着展开―数据库 ‖,再展开要修改数据的那个表所属的数据库,如―RtvuStu‖。

2)选中―表‖,在企业管理器窗口的右边,选择要修改的表,如―Student‖,单击鼠标右键,在弹出的快捷菜单中选择―打开表‖→―返回所有行‖命令。

3)将光标定位在要修改的记录上,对数据进行修改,操作方法和插入数据类似。

4)数据修改完毕后,关闭窗口,系统会自动保存修改。

5.1 数据表的操作

4.使用T-SQL语句修改数据表

使用T-SQL语句来修改记录的语法格式如下: Update表名

Set{列名={表达式|Default|Null}[,…n]} [Where <检索条件表达式>]

5.1 数据表的操作

【例5-4】 打开查询分析器,使用T-SQL命令将张三的姓名改为―张大三‖,输入以下语句: Update student Set sname='张大三' Where sname='张三' Go

Select * from student Go

5.1 数据表的操作

5.使用企业管理器删除数据

1)打开企业管理器,展开SQL Server实例,接着展开―数据库‖,再展开要修改数据的表,如―RtvuStu‖。

2)选中―表‖,在企业管理器窗口的右边,选择要删除数据的表,如―Student‖,单击鼠标右键,在弹出的快捷菜单中选择―打开表‖→―返回所有行‖命令。

3)在弹出的表记录浏览器窗口中,可以选中某一条记录或按住鼠标左键连续选中多条记录,单击鼠标右键,在弹出的快捷菜单中选择―删除‖命令,如图5-13所示。在弹出的系统提示对话框中单击―是‖按钮,即可删除记录,如图5-14所示

5.1 数据表的操作

6.使用T-SQL语句删除数据

使用T-SQL语句来删除记录的语法格式如下: Delete 表名 [Where 条件]

【例5-5】 使用T-SQL语句,删除学生―王玉玲‖的记录。 Use RtvuStu Delete Student

Where sname='王玉玲' Go

5.2 数据完整性

任务描述:数据完整性保证了在数据库中存储数据的一致性和正确性,这对数据库管理系统很重要。如在―RtvuStu‖数据库中,―Student‖表的学生学号S_ID必须唯一,成绩表―Results‖中必须是―Student‖表中有的学号,S_ID才能有成绩。数据完整性关系到数据库系统中的数据是否准确、一致和可靠,对使用、管理和维护数据库是十分重要的。

任务目标:理解数据完整性的基本概念;掌握数据库完整性的操作

5.2 数据完整性

5.2.1 数据完整性概述 数据完整性有4种类型: -实体完整性 -域完整性 -参照完整性

-用户定义的完整性。

5.2 数据完整性

1.实体完整性

实体完整性要求表中的每一行必须是唯一的,它可以通过主键约束、唯一键约束、索引和标识等来实现,也称为行完整性。

5.2 数据完整性

2.域完整性

域完整性也称为列完整性,用来保证数据库中数据取值的合理性,即输入数据的数据类型、格式以及有效范围是否正确

5.2 数据完整性

3.参照完整性

参照完整性又称为引用完整性。它定义了一个关系数据库中,被参照表(主表)中的数据要与参照表(从表)中的数据保持一致。参照完整性基于外键和主键之间或外键和候选键之间的关系,通过外键约束和检查约束来实现

5.2 数据完整性

4.用户自定义完整性

由于每个用户的数据库都有自己独特的需求,所以系统必须有一种方式来实现定制自己的数据完整性。用户自定义完整性可以通过数据类型、规则、存储过程和触发器来实现

5.2 数据完整性

5.2.2 约束

约束是SQL Server提供的自动保持数据库中数据完整性的一种机制,它定义了可输入表或表的单个列中的数据的限制条件

在SQL Server中主要的约束有主键结束、外键约束、唯一性约束、检查约束、默认约束等

5.2 数据完整性

1.主键约束

表的一列或几列组合的值在表中唯一地指定一行记录,这样的一列或多列称为表的主键,通过它可强制表的实体完整性.

5.2 数据完整性

在一个没有定义主键的表上添加一个主键,可以通过以下方法实现。 (1)使用企业管理器创建主键

1)打开企业管理器,展开SQL Server实例,展开―数据库‖,展开要设置主键的那个表所属的数据库,如―RtvuStu‖。

2)选中―表‖,在企业管理器窗口的右边选择要设置主键的表,如―Student‖,单击鼠标右键,在弹出的快捷菜单中选择―设计表‖命令,如图5-15所示。

5.2 数据完整性

3)在弹出的表设计器窗口中进行表的修改,可以选中某一个字段或按住―Ctrl‖键选中多个字段,单击鼠标右键,选择―设置主键‖命令。

4)保存所做的修改,关闭表设计器窗口,如图5-16所示

5.2 数据完整性

(2)使用SQL语句创建主键 定义单列主键的语法格式如下: Create Table 数据表名

(列名 数据类型 [Constraint 约束名] Primary key)

对已有的数据表,重新定义主键语法格式如下: Alter Table 数据表名

Add [Constrain约束名] Primary key

5.2 数据完整性

2.外键约束

外键约束定义了表与表之间的关系。当一个表中的一列或多列的组合和其他表中的主键定义相同时,就可以将这些列或列的组合定义为外键,并设定与它关联的表或列

5.2 数据完整性

(1)使用企业管理器创建外键

使用企业管理器创建外键的具体步骤如下:

1)打开企业管理器,展开SQL Server实例,接着展开―数据库‖,再展开要设置外键的表所属的数据库,如―RtvuStu‖。

2)选中―表‖,在企业管理器窗口的右边选择要设置外键的表,如―Student‖,单击鼠标右键,在弹出的快捷菜单中选择―设计表‖命令,如图5-17所示

5.2 数据完整性

3)在弹出的表设计器窗口中,单击鼠标右键,选择―关系‖命令,如图5-18所示。在弹出的―属性‖对话框中单击―新建‖按钮,可以设定关系名、主键表、外键表以及相关联的字段,如图5-19所示

4)单击―关闭‖按钮,关闭―属性‖对话框,保存所做的修改,关闭表设计器的窗口。

5.2 数据完整性 5.2 数据完整性

(2)使用T-SQL语句定义外键约束

使用T-SQL语句定义外键约束语法格式如下: Alter Table 表名

Add Constraint 外键名 Foreign key (创建外键的列名) References 主键表名 (所关联的列名)

5.2 数据完整性

【例5-7】 将―Student‖表中的S_ID字段设置为―Results‖表的外键。其中,S_ID为―Student‖的主键。 Use RtvuStu Go

Alter Table Results

Add constraint fk_Results_student Foreign key (S_ID)

References student(S_ID) Go

5.2 数据完整性

3.唯一性约束

唯一性约束是指不允许数据表在指定列上具有相同的值,但允许Null。唯一性约束与主键约束的区别在于:唯一性约束主要用于在非主键的一列或多列上要求数据唯一;唯一性约束允许该列上存在一个Null,而主键绝不允许;可以在一个表上创建多个唯一约束,而在一个表上只能设置一个主键

5.2 数据完整性

(1)使用企业管理器创建唯一性约束

使用企业管理器创建唯一性约束的具体步骤如下:

1)打开企业管理器,展开SQL Server实例,接着展开―数据库‖,再展开要设置唯一性约束的表所属的数据库,如―RtvuStu‖。

2)选中―表‖,在企业管理器窗口的右边选择要设置唯一性约束的表,如―Student‖,单击鼠标右键,在弹出的快捷菜单中选择―设计表‖命令

5.2 数据完整性

3)在弹出的表设计器窗口中单击鼠标右键,在弹出的快捷菜单中,选择―索引/键‖命令,如图5-20所示

4)在弹出的―属性‖对话框中单击―新建‖按钮,可以设置约束名,选中―创建Unique‖复选框,则可以创建唯一性约束

5.2 数据完整性

(2)使用T-SQL语句创建唯一性约束

使用T-SQL语句定义唯一性约束语法格式如下: Add Constraint 约束名 Unique(列名)

5.2 数据完整性

【例5-8】 为学生表―Student‖的姓名―Sname‖列创建唯一性约束。 在查询分析器中输入以下语句: Use RtvuStu Go

Alter Table Student Add

Constraint stu_name unique(Sname) Go

5.2 数据完整性

4.检查约束

检查(Check)约束对输入列或整个表中的值设置检查条件,以限制输入值,保证数据库的数据完整性

5.2 数据完整性

(1)使用企业管理器创建Check约束

使用企业管理器创建Check约束的具体步骤如下:

1)打开企业管理器,展开SQL Server实例,接着展开―数据库‖,再展开要创建Check约束的表所属的数据库,如―RtvuStu‖。

2)选中―表‖,在企业管理器窗口的右边选中要创建Check约束的表,如―Student‖,单击鼠标右键,在弹出的快捷菜单中选择―设计表‖命令

5.2 数据完整性

3)在弹出的表设计器窗口中单击鼠标右键,在弹出的快捷菜单中选择―Check约束‖命令,如图5-22所示。在弹出的―属性‖对话框中单击―Check约束‖选项卡,单击―新建‖按钮,可以设定约束的名称和约束表达式,在―约束表达式‖编辑框中编写相应的Check约束表达式,如图5-23所示。单击―关闭‖按钮结束Check约束的设计

5.2 数据完整性 5.2 数据完整性

(2)使用T-SQL语句实现检查约束

使用T-SQL语句定义检查约束语法格式如下: Add Constraint 约束名 Check (逻辑表达式)

5.2 数据完整性

【例5-9】 在―Student‖表中,增加Sex属性列只能取―男‖或者―女‖的Check约束。 在查询分析器中输入以下语句: Use RtvuStu Go

Alter Table Student Add

Constraint S_Sex check (sex in('男','女'))

Go

5.2 数据完整性

5.默认约束

默认约束通过定义列的默认值或使用数据库的默认值对象绑定表的列,以确保在没有为某列指定数据时,指定列的值。默认值可以是常量,也可以是表达式,还可以为Null值

5.2 数据完整性

(1)使用企业管理器创建

使用企业管理器创建默认约束的具体步骤如下:

1)打开企业管理器,展开SQL Server实例,接着展开―数据库‖,再展开要创建默认约束的表所属的数据库,如―RtuvStu‖。

2)选中―表‖,在企业管理器窗口的右边选择要设置默认约束的表,如―Student‖,单击鼠标右键,选择―设计表‖命令。 3)在表设计器窗口中选中要设置默认约束的字段,在表设计器下方的―列‖属性部分设置―默认值‖的值,如图5-24所示

5.2 数据完整性 5.2 数据完整性

【例5-10】 在―Student‖表中的Sex列上,添加默认值约束,默认值为―男‖。 在查询分析器上输入以下语句: Use RtvuStu Go

Alter Table Student Add

Constraint M_sex default '男' for sex Go

5.2 数据完整性

5.2.3 规则

规则是数据库中对表的列或用户定义数据类型中的值的规定和限制,是单独存储的独立的数据库对象。规则与其作用的表或用户定义数据类型是相互独立的,即表或用户定义的对象的删除、修改不会对与之相连的规则产生影响

规则的创建、查看、绑定和删除等操作可在企业管理器中进行,也可利用T-SQL语句实现

5.2 数据完整性

1.使用企业管理器创建规则对象

使用企业管理器,在―RtvuStu‖数据库中创建一个名为RL_ID的规则对象,要求每个新加入或修改的课程号为8位数字。

1)打开企业管理器,展开SQL Server实例,选中要创建规则的数据库―RtvuStu‖,选中―规则‖节点,单击鼠标右键,在弹出的快捷菜单中,单击―新建规则‖命令。

2)在弹出的―规则属性‖对话框中,输入名称RL_ID和值―@y Like?[0-9]‘+ ?[0-9]‘ +?[0-9]‘+?[0-9]‘+?[0-9]‘+?[0-9]‘+?[0-9]‘+?[0-9]‘‖

5.2 数据完整性

3)单击―确定‖按钮,完成创建规则对象的操作,如图5-25所示。

5.2 数据完整性

2.使用SQL语句创建规则对象

使用T-SQL语句创建规则对象的语法如下: Create Rule 规则名称 As 条件表达式

5.2 数据完整性

【例5-11】 使用T-SQL语句,创建性别规则sex_rule,将限定绑定该规则的列所能插入的数据

范围是―男‖、―女‖。

Create rule sex_rule As @sex in('男','女')

5.2 数据完整性

3.查看和修改规则

(1)在企业管理器查看和修改规则

在企业管理器的数据库对象中选择―规则‖对象,可从右窗格中看到规则的大部分信息,如图5-26所示。

5.2 数据完整性

(2)使用存储过程sp_helptext查看规则

使用sp_helptext系统存储过程可以查看规则的文本信息,如图5-27所示

5.2 数据完整性

4.绑定和解绑定规则

创建好规则对象后,不能直接使用,必须绑定到表的列上或用户自定义的数据类型上才能使用

绑定和解绑定操作既可以使用企业管理器完成,也可以通过系统存储过程来实现

5.2 数据完整性

(1)使用企业管理器绑定和解绑定规则对象

1)打开企业管理器,展开SQL Server实例,选中要操作的数据库―RtvuStu‖,单击―规则‖节点。 2)在右窗格中,选中sex_rule规则对象,单击鼠标右键,在弹出的快捷菜单中选中―属性‖命令,打开―规则属性‖对话框。

3)在打开的―规则属性‖对话框中,单击―绑定列‖按钮,弹出―将规则绑定到列‖对话框。

4)在该对话框中的―表‖下拉列表框中,选定相应的表和要绑定的列,然后单击―添加‖按钮,再单击―确定‖按钮完成操作

5.2 数据完整性

5)解除绑定操作,只需按以上步骤,选中―绑定列‖列表框中相应的列,然后单击―删除‖按钮即可,如图5-28所示

5.2 数据完整性

(2)使用系统存储过程绑定和解除绑定规则对象

系统存储过程sp_bindrule可以绑定一个规则到表的一个列或一个用户定义数据类型上,其语法格式如下:

sp_bindrule '规则名称','表名.字段名'|'用户自定义数据类型?

解除规则的绑定可以使用sp_unbindrule存储过程。 sp_unbindrule存储过程的语法格式如下:

sp_unbindrule '规则名称','表名.字段名'|'用户自定义数据类型'

5.2 数据完整性

5.删除规则

可以在企业管理器中选择规则,单击右键,从快捷菜单中选择―删除‖命令,即可删除规则,也可使用Drop Rule语句删除当前数据库中的一个或多个规则。其语法格式如下:

Drop rule规则名称

5.2 数据完整性

5.2.4 默认

如果在插入行时没有输入列的值,则默认值指定列中所使用的值。默认值可以是任何取值为常量的对象。

在SQL Server中,有两种使用默认值的方法: (1)使用默认值约束 (2)使用默认对象。

5.2 数据完整性

1.创建默认对象

(1)使用企业管理器创建默认对象

使用企业管理器创建默认对象操作步骤如下: 1)打开企业管理器,展开SQL Server实例,打开数据库,选择―默认‖选项,然后单击鼠标右键,在弹出的快捷菜单中选择―新建默认‖命令。

2)此时会打开―默认属性‖对话框,如图5-29所示,输入默认对象的名称和默认值。

5.2 数据完整性

图5-29 ―默认属性‖对话框 3)单击―确定‖按钮,创建一个默认对象。

5.2 数据完整性

(2)使用Create Default创建默认对象 Create Default语句的语法格式如下: Create Default 默认名 As Constant_expression

5.2 数据完整性

【例5-13】 使用SQL语句创建ssex默认对象。 Use RtvuStu Go

Create Default ssex as '男' Go

5.2 数据完整性

2.绑定和解除默认对象

默认对象创建后不能直接使用,必须首先将其绑定到某列或者用户自定义的数据类型上。 (1)使用企业管理器绑定一个默认对象 使用企业管理器的操作步骤如下:

1)打开企业管理器,展开SQL Server实例,打开―数据库‖选项,选择要绑定的数据库―RtvuStu‖和数据表―Student‖。

2)单击―默认‖选项,在右侧详细信息窗格中选择要绑定的默认对象ssex。

5.2 数据完整性

3)单击鼠标右键,执行―属性‖命令,打开―默认属性‖对话框,如图5-29所示。其中的―值‖文本框可以设置默认值,―绑定UDT‖按钮可将默认对象绑定到用户自定义数据类型,―绑定列‖按钮可将默认对象绑定到列。

5.2 数据完整性

4)单击―绑定列‖按钮,打开―将默认值绑定到列‖对话框,如图5-30所示。在―表‖下拉列表框中选择列所在的表―Student‖,然后在―未绑定的列‖列表框中选择要绑定到的列,然后单击―添加‖按钮,将其添加到―绑定列‖列表框中。这里将ssex默认对象绑定到―Student‖表的Sex列上

5.2 数据完整性

5)单击―确定‖按钮,即可将ssex默认对象绑定到―Student‖表的Sex列上。

6)解除绑定操作,只需按以上1)、2)、3)步骤打开―将默认值绑定到列‖对话框,选中―绑定列‖列表框中相应的列,然后单击―删除‖按钮即可

5.2 数据完整性

(2)使用系统存储过程绑定和解除绑定默认对象

使用sp_bindefault存储过程绑定默认,其语法格式如下:

Execute sp_bindefault '默认对象名称', '表名.字段名'|'用户自定义数据类型' 使用sp_unbindefault存储过程解除绑定默认,其语法格式如下: Execute sp_unbindefault '表名.字段名'|'用户自定义数据类型'

本 章 小 结

本章首先介绍了在企业管理器中使用表设计器和使用T-SQL语句来创建表、修改 表和删除表的操作方式,从数据维护出发,介绍了使用以上两种方法对表中数据进行新增、修改和删除。然后讲解数据完整性相关概念,并介绍了使用约束、默认、规则等实现数据完整性的操作方法。

5.2 数据完整性

(2)使用系统存储过程绑定和解除绑定默认对象

使用sp_bindefault存储过程绑定默认,其语法格式如下:

Execute sp_bindefault '默认对象名称', '表名.字段名'|'用户自定义数据类型' 使用sp_unbindefault存储过程解除绑定默认,其语法格式如下: Execute sp_unbindefault '表名.字段名'|'用户自定义数据类型'

本 章 小 结

本章首先介绍了在企业管理器中使用表设计器和使用T-SQL语句来创建表、修改 表和删除表的操作方式,从数据维护出发,介绍了使用以上两种方法对表中数据进行新增、修改和删除。然后讲解数据完整性相关概念,并介绍了使用约束、默认、规则等实现数据完整性的操作方法。

本文来源:https://www.bwwdw.com/article/r3wr.html

Top