上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
第 1章 SQL Server 关系数据库简介
? 1.1 SQL Server 特点
? 1.2 SQL Server的安装和配置
? 1.3 SQL Server 工具和实用程序
开始 返回目录
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
SQL Server 关系数据库简介
? SQL Server是由 Microsoft开发和推广的关系数据
库管理系统( DBMS),它最初是由 Microsoft、
Sybase和 Ashton-Tate三家公司共同开发的,并于
1988年推出了第一个 OS/2版本。 SQL Server近年
来不断更新版本,1996年,Microsoft 推出了 SQL
Server 6.5版本; 1998年,SQL Server 7.0版本和
用户见面; SQL Server 2000是 Microsoft公司于
2000年推出的最新版本。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.1 SQL Server 特点
1,真正的客户机 /服务器体系结构 。
2,图形化用户界面, 使系统管理和数据库管理更加直
观, 简单 。
3,丰富的编程接口工具, 为用户进行程序设计提供了
更大的选择余地 。
4,SQL Server与 Windows NT完全集成, 利用了 NT的
许多功能, 如发送和接受消息, 管理登录安全性等 。
SQL Server也可以很好地与 Microsoft BackOffice产
品集成 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? 5,具有很好的伸缩性, 可跨越从运行 Windows
95/98的膝上型电脑到运行 Windows 2000的大型多
处理器等多种平台使用 。
? 6,对 Web技术的支持, 使用户能够很容易地将数
据库中的数据发布到 Web页面上 。
? 7,SQL Server提供数据仓库功能, 这个功能只在
Oracle和其他更昂贵的 DBMS中才有 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
SQL Server 2000与以前版本相比较
又具有以下新特性
1,支持 XML(Extensive Markup Language,
扩展标记语言 )
2,强大的基于 Web的分析
3,支持 OLE DB和多种查询
4,支持分布式的分区视图
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.2 SQL Server的安装和配置
? 1.2.1 SQL Server 环境需求
? 1.2.2 SQL Server 2000的安装
? 1.2.3 SQL Server 升级
? 1.2.4 SQL Server 系统数据库简介
? 1.2.5 SQL Server 系统表简介
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.2.1 SQL Server 环境需求
? SQL Server 2000常见的版本
? 企业版 ( Enterprise Edition)
? 标准版 ( Standard Edition)
? 个人版 ( Personal Edition)
? 开发者版 ( Developer Edition)
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1、安装、运行 SQL Server 2000的硬件需求
( 1) 计算机
Inter及其兼容计算机, Pentium 166Mz或者更高处理器或 DEC
Alpha和其兼容系统 。
( 2) 内存 ( RAM)
企业版最少 64MB内存, 其他版本最少需要 32MB内存, 建议
使用更多的内存 。
( 3) 硬盘空间
完全安装 ( Full) 需要 180MB的空间, 典型安装 ( Typical)
需要 170MB的空间, 最小安装 ( Minimum) 需要 65MB的空间 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2、安装、运行 SQL Server 2000的软件需求
? SQL Server 2000企业版必须运行于安装 Windows NT Server
Enterprise Edition 4.0或者 Windows2000 Advanced Server以
及更高版本的操作系统下 。
? SQL Server 2000标准版必须运行于安装 Windows NT Server
Enterprise Edition 4.0,Windows NT Server 4.0,Windows
2000 Server以及更高版本的操作系统下 。
? SQL Server 2000 个人版可在多种操作系统下运行, 如可运行
于 Windows 9x,Windows NT 4.0或 Windows 2000的服务器
版或工作站版的操作系统下 。
? SQL Server 2000 开发者版可运行于上述 Windows 9x以外的
所有操作系统下 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.2.2 SQL Server 2000的安装
SQL Server 2000的安装过程与其它 Microsoft
Windows系列产品类似。 用户可根据向导提示,
选择需要的选项一步一步地完成。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.2.3 SQL Server 升级
如果计算机中安装有旧的 SQL Server版本, 那么安装 SQL
Server 2000时需要做以下工作, 以确保系统能退回到升级
前的状态 。
1,检查操作系统是否满足安装要求 。
2,检查磁盘空间是否足够安装新的 SQL Server 2000版本 。
3,备份包括系统数据库在内的所有数据库 。
4,备份操作系统的注册表, 用于恢复原有的 SQL Server。
5,关闭任何与旧的 SQL Server相关的应用程序 。
6,安装 SQL Server 2000数据库管理系统 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.2.4 SQL Server 系统数据库简介
SQL Server 2000有 6个系统数据库
1,Master数据库是 SQL Server系统最重要的数据库,它
记录了 SQL Server系统的所有系统信息。这些系统信
息包括所有的登录信息、系统设置信息,SQL Server
的初始化信息和其它系统数据库及用户数据库的相关
信息。
2,Model数据库是所有用户数据库和 Tempdb数据库的模
板数据库,它含有 Master数据库所有系统表的子集,
这些系统数据库是每个用户定义数据库需要的。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3,Msdb数据库是代理服务数据库,为其警报、任务
调度和记录操作员的操作提供存储空间。
4,Tempdb是一个临时数据库,它为所有的临时表、
临时存储过程及其它临时操作提供存储空间。
5,Pubs和 Northwind数据库是两个实例数据库,它们
可以作为 SQL Server的学习工具。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.2.5 SQL Server 系统表简介
系统目录是由描述 SQL Server 系统的数据库、基
表、视图和索引等对象的结构的系统表组成。
SQL Server 经常访问系统目录,检索系统正常运
行所需的必要信息。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
几个最重要的系统表
1,Sysobjects表
SQL Server 的主系统表 sysobjects出现在每个数据库中, 它对每个数
据库对象含有一行记录 。
2,Syscolumns表
系统表 syscolumns出现在 master数据库和每个用户自定义的数据库中,
它对基表或者视图的每个列和存储过程中的每个参数含有一行记录 。
3,Sysindexes表
系统表 sysindexes出现在 master数据库和每个用户自定义的数据库中,
它对每个索引和没有聚簇索引的每个表含有一行记录,它还对包括文本
/图像数据的每个表含有一行记录。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4,Sysusers表
系统表 sysusers出现在 master数据库和每个用户自定义的数
据 库中, 它对 整个 数据库 中的 每个 Windows NT用户,
Windows NT用户组, SQL Server 用户或者 SQL Server 角色
含有一行记录 。
5,Sysdatabases表
系统表 sysdatabases对 SQL Server 系统上的每个系统数据
库和用户自定义的数据库含有一行记录, 它只出现在 master数
据库中 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
6,Sysdepends表
系统表 Sysdepends对表, 视图和存储过程之间的每个依赖关
系含有一行记录, 它出现在 master数据库和每个用户自定义的
数据库中 。
7,Sysconstraints表
系统表 sysconstraints对使用 CREATE TABLE或者 ALTER
TABLE语句为数据库对象定义的每个完整性约束含有一行记录,
它出现在 master数据库和每个用户自定义的数据库中 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.3 SQL Server 工具和实用程序
1.3.1 企业管理器
1.3.2 服务管理器
1.3.3 查询分析器
1.3.4 分布式事务处理
协调器
1.3.5 性能监视器
1.3.6 导入和导出数据
1.3.7 SQL Server 分析器
1.3.8 服务器网络实用工具
1.3.9 客户端网络实用工具
1.3.10 联机帮助文档
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.3.1 企业管理器
? 企业管理器是基于一种新的被称为微软管理控制
台( Microsoft Management Console)的公共服务
器管理环境,它是 SQL Server中最重要的一个管
理工具。企业管理器不仅能够配置系统环境和管
理 SQL Server,而且由于它能够以层叠列表的形
式来显示所有的 SQL Server对象,因而所有 SQL
Server对象的建立与管理都可以通过它来完成。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
利用企业管理器可以完成的操作有
? 管理 SQL Server 服务器;建立与管理数据库;建
立与管理表, 视图, 存储过程, 触发程序, 角色,
规则, 默认值等数据库对象, 以及用户定义的数
据类型;备份数据库和事务日志, 恢复数据库;
复制数据库;设置任务调度;设置警报;提供跨
服务器的拖放控制操作;管理用户帐户;建立
Transact-SQL命令语句以及管理和控制 SQL Mail。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 1-20 SQL Server 企业管理器( Enterprise Manager)界面
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.3.2 服务管理器( Service Manager)
? SQL Server 服务管理器是在服务器端实际工作时
最有用的实用程序,其界面如图 1-21所示。服务管
理器用来启动、暂停、继续和停止数据库服务器
的实时服务,其提供的服务包括,SQL Server、
SQL Server Agent,MSDTC( Microsoft
Distributed Transaction Coordinator,微软分布式
事务协调器)。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 1-21 SQL Server 服务管理器( Service Manager)界面
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.3.3 查询分析器( Query Analyzer)
? SQL Server 2000新的图形化查询分析器用于输入
和执行 Transaction-SQL语句, 并且迅速查看这些
语句的结果, 以分析和处理数据库中的数据 。 这
是一个非常实用的工具, 对掌握 SQL语言, 深入
理解 SQL Server的管理工作有很大帮助 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.3.4 分布式事务处理协调器( Distributed
Transaction Coordinator
? 用于提供和管理不同服务器之间的分布式事务处
理,这些服务器必须是基于 Windows NT或
Windows 9x/2000系列操作系统的服务器。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.3.5 性能监视器( Performance Monitor)
? 它将 Windows NT操作系统的性能监视器和 SQL
Server集成起来, 使用它可以查看和统计 SQL
Server系统的运行情况, 查找影响系统性能的主要
因素, 从而为改进和优化系统, 提高系统性能提
供依据 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.3.6 导入和导出数据( Imput and Export
Data)
? 导入和导出数据采用 DTC 导入 /导出向导来完成。
此向导包含了所有的 DTC( Data Transformation
Services)工具,提供了在 OLE DB数据源之间复
制数据的最简捷的方法。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.3.7 SQL Server 分析器( Profiler)
? 是一个图形化的管理工具,用于监督、记录和检
查 SQL Server 数据库的使用情况。对系统管理员
来说,它是一个连续实时地捕获用户活动情况的
间谍。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.3.8 服务器网络实用工具( Server
Network Utility)
? 用来配置服务器端网络连接和设置相关参数等。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.3.9 客户端网络实用工具( Client Network
Utility)
? 用来配置客户端的网络连接, 管理和测定客户端
的网络库等 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.3.10 联机帮助文档( Books Online)
? SQL Server 2000提供了大量的联机文档,它具有
索引和全文搜索能力,可根据关键词来快速查找
用户所需信息。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
第 2章 Transact-SQL语言
? 2.1 数据定义语言( DDL)
? 2.2 数据操纵语言( DML)
? 2.3 数据控制语言( DCL)
? 2.4 系统存储过程
? 2.5 其它语言元素
上一章
返回目录
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
Transact-SQL语言主要组成部分
数据定义语言 ( DDL,Data Definition Language)
数据操纵语言 ( DML,Data Manipularion Language)
数据控制语言 ( DCL,Data Control Language)
系统存储过程 ( System Stored Procedure)
一些附加的语言元素
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2.1 数据定义语言( DDL)
?数据定义语言是指用来定义和管理数据库以
及数据库中的各种对象的语句, 这些语句包括
CREATE,ALTER和 DROP等语句 。 在 SQL
Server 2000中, 数据库对象包括表, 视图,
触发器, 存储过程, 规则, 缺省, 用户自定义
的数据类型等 。 这些对象的创建, 修改和删除
等 都 可 以 通 过 使 用 CREATE, ALTER,
DROP等语句来完成 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
程序清单 2-1:创建数据库表的一个例子
?CREATE TABLE publishers
?(
? pub_id char(4) NOT NULL
? CONSTRAINT UPKCL_pubind PRIMARY KEY
CLUSTERED
? CHECK (pub_id IN ('1389','0736','0877',
'1622','1756')
? OR pub_id LIKE '99[0-9][0-9]'),
? pub_name varchar(40) NULL,
? city varchar(20) NULL,
? state char(2) NULL,
? country varchar(30) NULL
? DEFAULT('USA')
?)
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
程序清单 2-2:修改视图的一个例子
? USE pubs
? GO
? ALTER VIEW yourview
? AS
? SELECT title,mycount= @@ ROWCOUNT,
ytd_sales
? FROM titles
? WHERE type = 'mod_cook'
? GO
? SELECT *
? FROM yourview
? GO
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
程序清单 2-3:删除触发器的一个例子
? /*下面的例子将删除触发器 employee_insupd。 */
? USE pubs
? IF EXISTS (SELECT name FROM sysobjects
? WHERE name = 'employee_insupd' AND type
= 'TR')
? DROP TRIGGER employee_insupd
? GO
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2.2 数据操纵语言( DML)
?数据操纵语言是指用来查询、添加、修
改和删除数据库中数据的语句,这些语句
包括 SELECT,INSERT,UPDATE、
DELETE等。在默认情况下,只有
sysadmin,dbcreator,db_owner或
db_datawriter等角色的成员才有权利执行
数据操纵语言。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,SELECT语句
?SELECT语句的语法形式如下,
?SELECT select_list
[ INTO new_table ]
FROM table_source
[ WHERE search_condition ]
[ GROUP BY group_by_expression ]
[ HAVING search_condition ]
[ ORDER BY order_expression [ ASC | DESC ] ]
?[COMPUTE clause]
?[FOR BROWSE]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
几种常用语句的用法
SELECT子句用于指定所选择的要查询的特
定表中的列, 它可以是星号 ( *), 表达式,
列表, 变量等 。
INTO子句用于指定所要生成的新表的名称 。
FROM子句用于指定要查询的表或者视图,
最多可以指定 16个表或者视图, 用逗号相互
隔开 。
WHERE子句用来限定查询的范围和条件 。
GROUP BY子句是分组查询子句 。
HAVING子句用于指定分组子句的条件 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
GROUP BY子句, HAVING子句和集合函数
一起可以实现对每个组生成一行和一个汇总值 。
ORDER BY子句可以根据一个列或者多个列
来排序查询结果, 在该子句中, 既可以使用列
名, 也可以使用相对列号 。
ASC表示升序排列, DESC表示降序排列 。
COMPUTE子句使用集合函数在查询的结果集
中生成汇总行 。
COMPUTE BY子句用于增加各列汇总行 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? SELECT子句的语法形式如下所示,
? SELECT [ ALL | DISTINCT ]
[ TOP n [ PERCENT ] [ WITH TIES ] ]
< select_list >
? < select_list >,:=
? { *
| { table_name | view_name |
table_alias }.*
| { column_name | expression |
IDENTITYCOL | ROWGUIDCOL }
[ [ AS ] column_alias ]
| column_alias = expression
} [,...n ]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
程序清单 2-4,显示居住在加利福尼亚州且姓名不为
McBadden 的作者列。
? USE pubs
? SELECT au_fname,au_lname,phone AS
Telephone
? FROM authors
? WHERE state = 'CA' and au_lname <>
'McBadden'
? ORDER BY au_lname ASC,au_fname ASC
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
程序清单 2-5:使用两个相关子查询查找作者姓名, 这些
作者至少参与过一本受欢迎的计算机书籍的创作 。
? USE pubs
? SELECT au_lname,au_fname
? FROM authors
? WHERE au_id IN
? (SELECT au_id
? FROM titleauthor
? WHERE title_id IN
? (SELECT title_id
? FROM titles
? WHERE type = 'popular_comp'))
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
程序清单 2-6:显示含有本年度截止到现在的当前销售额的行,
然后按 type以递减顺序计算书籍的平均价格和预付款总额。
? USE pubs
? SELECT CAST(title AS char(20)) AS
title,type,price,advance
? FROM titles
? WHERE ytd_sales IS NOT NULL
? ORDER BY type DESC
? COMPUTE AVG(price),SUM(advance) BY
type
? COMPUTE SUM(price),SUM(advance)
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
程序清单 2-7:先删除表 T1,然后又创建一个带有四个列的表 T1。最
后利用 INSERT 语句插入一些数据行,这些行只有部分列包含值。
? IF EXISTS(SELECT TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
? WHERE TABLE_NAME = 'T1')
? DROP TABLE T1
? GO
? CREATE TABLE T1
? ( column_1 int identity,
? column_2 varchar(30)
? CONSTRAINT default_name
DEFAULT ('column default'),
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
?column_3 int NULL,
? column_4 varchar(40)
?)
?INSERT INTO T1 (column_4)
? VALUES ('Explicit value')
?INSERT INTO T1 (column_2,column_4)
? VALUES ('Explicit value','Explicit value')
?INSERT INTO T1 (column_2,column_3,column_4)
? VALUES ('Explicit value',-44,'Explicit
value')
?SELECT *
?FROM T1
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
程序清单 2-8:一个简单的修改语句。
? UPDATE publishers
? SET city = 'Atlanta',state = 'GA‘
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
程序清单 2-9:一个带有 WHERE条件的修改语句。
? UPDATE authors
? SET state = 'PC',city = 'Bay
City'
? WHERE state = 'CA' AND city =
'Oakland'
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
程序清单 2-10:通过 UPDATE 语句使用来自另一个表的信息,其修
改表 titles 中的 ytd_sales 列,以反映表 sales 中的最新销售记录。
?UPDATE titles
? SET ytd_sales = titles.ytd_sales +
sales.qty
? FROM titles,sales
? WHERE titles.title_id =
sales.title_id
? AND sales.ord_date = (SELECT
MAX(sales.ord_date) FROM sales)
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2.3 数据控制语言( DCL)
?数据控制语言( DCL)是用来设置或者更
改数据库用户或角色权限的语句,这些语句
包括 GRANT,DENY,REVOKE等语句,
在默认状态下,只有 sysadmin,dbcreator、
db_owner或 db_securityadmin等角色的成员
才有权利执行数据控制语言。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,GRANT语句
?GRANT语句是授权语句, 它可以把语句权
限或者对象权限授予给其他用户和角色 。
?授予语句权限的语法形式为,
?GRANT {ALL | statement[,...n]}
TO security_account [,...n ]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
授予对象权限的语法形式为,
?GRANT
{ ALL [ PRIVILEGES ] | permission [,...n ] }
{
[ ( column [,...n ] ) ] ON { table | view }
| ON { table | view } [ ( column [,...n ] ) ]
| ON { stored_procedure | extended_procedure }
| ON { user_defined_function }
}
TO security_account [,...n ]
[ WITH GRANT OPTION ]
[ AS { group | role } ]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,DENY语句
?DENY语句用于拒绝给当前数据库内的用户或
者角色授予权限, 并防止用户或角色通过其组
或角色成员继承权限 。
?否定语句权限的语法形式为,
?DENY { ALL | statement [,...n ] }
TO security_account [,...n ]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
否定对象权限的语法形式为,
?DENY
{ ALL [ PRIVILEGES ] | permission
[,...n ] }
{
[ ( column [,...n ] ) ] ON { table |
view }
| ON { table | view } [ ( column
[,...n ] ) ]
| ON { stored_procedure |
extended_procedure }
| ON { user_defined_function }
}
TO security_account [,...n ]
[ CASCADE ]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3,REVOKE语句
?REVOKE语句是与 GRANT语句相反的语句, 它能
够将以前在当前数据库内的用户或者角色上授予或
拒绝的权限删除, 但是该语句并不影响用户或者角
色从其他角色中作为成员继承过来的权限 。
?收回语句权限的语法形式为,
?REVOKE { ALL | statement [,...n ] }
FROM security_account [,...n ]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
收回对象权限的语法形式为,
?REVOKE [ GRANT OPTION FOR ]
{ ALL [ PRIVILEGES ] | permission [,...n ] }
{
[ ( column [,...n ] ) ] ON { table | view }
| ON { table | view } [ ( column [,...n ] ) ]
| ON { stored_procedure | extended_procedure }
| ON { user_defined_function }
}
{ TO | FROM }
security_account [,...n ]
[ CASCADE ]
[ AS { group | role } ]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2.4 系统存储过程
?系统存储过程是 SQL Server系统创建的存
储过程,它的目的在于能够方便地从系统
表中查询信息,或者完成与更新数据库表
相关的管理任务或其它的系统管理任务。
系统存储过程可以在任意一个数据库中执
行。系统存储过程创建并存放于系统数据
库 master中,并且名称以 sp_或者 xp_开头。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
系统存储过程的部分示例如下,
sp_addtype:用于定义一个用户定义数据类型 。
sp_configure:用于管理服务器配置选项设置 。
xp_sendmail:用于发送电子邮件或寻呼信息 。
sp_stored_procedures:用于返回当前数据库中的存
储过程的清单 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
sp_help:用于显示参数清单和其数据类型 。
sp_depends:用于显示存储过程依据的对象
或者依据存储过程的对象 。
sp_helptext:用于显示存储过程的定义文本 。
sp_rename:用于修改当前数据库中用户对象
的名称 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2.5 其它语言元素
? 2.5.1 注释
? 2.5.2 变量
? 2.5.3 运算符
? 2.5.4 函数
? 2.5.5 流程控制语句
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2.5.1 注释
? 注释是程序代码中不执行的文本字
符串(也称为注解)。在 SQL Server中,
可以使用两种类型的注释字符:一种是
ANSI标准的注释符,--”,它用于单行注
释;另一种是与 C语言相同的程序注释符
号,即,/* */”。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2.5.2 变量
? 变量是一种语言中必不可少的
组成部分 。 Transact-SQL语言中有两
种形式的变量, 一种是用户自己定义
的局部变量, 另外一种是系统提供的
全局变量 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,局部变量
?局部变量是一个能够拥有特定数据类型的
对象,它的作用范围仅限制在程序内部。
局部变量可以作为计数器来计算循环执行
的次数,或是控制循环执行的次数。另外,
利用局部变量还可以保存数据值,以供控
制流语句测试以及保存由存储过程返回的
数据值等。局部变量被引用时要在其名称
前加上标志“@”,而且必须先用
DECLARE命令定义后才可以使用。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,全局变量
?全局变量是 SQL Server系统内部使用的变
量,其作用范围并不仅仅局限于某一程序,
而是任何程序均可以随时调用。全局变量
通常存储一些 SQL Server的配置设定值和
统计数据。用户可以在程序中用全局变量
来测试系统的设定值或者是 Transact-SQL
命令执行后的状态值。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
使用全局变量时应该注意以下几点,
? ① 全局变量不是由用户的程序定义的, 它们是
在服务器级定义的 。
? ② 用户只能使用预先定义的全局变量 。
? ③ 引用全局变量时, 必须以标记符, @@”开头 。
? ④ 局部变量的名称不能与全局变量的名称相同,
否则会在应用程序中出现不可预测的结果 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2.5.3 运算符
?运算符是一些符号, 它们能够用来执行
算术运算, 字符串连接, 赋值以及在字段,
常量和变量之间进行比较 。 在 SQL
Server 2000中, 运算符主要有以下六大
类:算术运算符, 赋值运算符, 位运算符,
比较运算符, 逻辑运算符以及字符串串联
运算符 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.算术运算符
?算术运算符可以在两个表达式上执行数
学运算,这两个表达式可以是数字数据
类型分类的任何数据类型。算术运算符
包括加( +)、减( — )、乘( *)、除
( /)和取模( %)。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2.赋值运算符
?Transact-SQL 中只有一个赋值运算符, 即
等号 ( =) 。 赋值运算符使我们能够将数据
值指派给特定的对象 。 另外, 还可以使用赋
值运算符在列标题和为列定义值的表达式之
间建立关系 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3.位运算符
?位运算符使我们能够在整型数据或者
二进制数据( image 数据类型除外)之
间执行位操作。此外,在位运算符左
右两侧的操作数不能同时是二进制数
据。
?
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
表 2-1 位运算符
运 算 符 含 义
&( 按位 AND)
按位 AND( 两个操作数 ) 。
|( 按位 OR)
按位 OR( 两个操作数 ) 。
^( 按位互斥 OR)
按位互斥 OR( 两个操作数 ) 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.比较运算符
?比较运算符用于比较两个表达式的大小或是否
相同,其比较的结果是布尔值,即 TRUE(表
示表达式的结果为真),FALSE(表示表达式
的结果为假)以及 UNKNOWN。除了 text、
ntext 或 image 数据类型的表达式外,比较运算
符可以用于所有的表达式。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.逻辑运算符
?逻辑运算符可以把多个逻辑表达式连
接起来 。 逻辑运算符包括 AND,OR和
NOT等运算符 。 逻辑运算符和比较运
算符一样, 返回带有 TRUE 或 FALSE
值的布尔数据类型 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
6.字符串串联运算符
?字符串串联运算符允许通过加号
(+) 进行字符串串联, 这个加号即
被称为字符串串联运算符 。 例如
对于语句 SELECT ‘abc’+’def’,
其结果为 abcdef。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
运算符的优先等级从高到低如下所示
括号,( ) ;
乘, 除, 求模运算符,*,/,%;
加减运算符,+,- ;
比较运算符,=,>,<,>=,<=,<>,!=,!>,!<;
位运算符,^,&,|;
逻辑运算符,NOT;
逻辑运算符,AND;
逻辑运算符,OR。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2.5.4 函数
?在 Transact-SQL语言中, 函数被用来执行
一些特殊的运算以支持 SQL Server的标准命
令 。 Transact-SQL 编程语言提供了三种函数,
?㈠ 行集函数:行集函数可以在 Transact-
SQL语句中当作表引用 。
?㈡ 聚合函数:聚合函数用于对一组值执行计
算并返回一个单一的值 。
?㈢标量函数:标量函数用于对传递给它的一
个或者多个参数值进行处理和计算, 并返回
一个单一的值 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
SQL Server中最常用的几种函数
字符串函数
日期和时间函数
数学函数
转换函数
系统函数
聚合函数
其它函数
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
字符串函数
?字符串函数可以对二进制数据、字符串
和表达式执行不同的运算,大多数字符串
函数只能用于 char和 varchar数据类型以
及明确转换成 char和 varchar的数据类型,
少数几个字符串函数也可以用于 binary和
varbinary数据类型。此外,某些字符串
函数还能够处理 text,ntext,image数据
类型的数据。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
字符串函数的分类,
基本字符串函数,UPPER,LOWER、
SPACE,REPLICATE,STUFF、
REVERSE,LTRIM,RTRIM。
字符串查找函数,CHARINDEX、
PATINDEX。
长度和分析函数,DATALENGTH、
SUBSTRING,RIGHT。
转换函数,ASCH,CHAR,STR、
SOUNDEX,DIFFERENCE。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
程序清单 2-25,
?在选择价格位于 $11和 $20之间的书名
时,使用 LOWER 函数,UPPER 函数
且把 UPPER 函数嵌套在 LOWER 函
数内。另外,该程序还使用
SUBSTRING函数从字符串中返回指定
的字符串。其源程序清单为,
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
部分函数应用例子
? 程序清单 2-26 --2-30为,
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2.日期和时间函数
?日期和时间函数用于对日期和时间数
据进行各种不同的处理和运算, 并返回
一个字符串, 数字值或日期和时间值 。
在 SQL Server 2000中, 日期和时间函
数的类型如表 2-5所示;另外, 表 2-6列
出了日期类型的名称, 缩写形式以及可
接受的值 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
表 2-5 日期和时间函数的类型
函 数 参 数
DATEADD ( datepart,number,date )
DATEDIFF ( datepart,date1,date2 )
DATENAME ( datepart,date )
DATEPART ( datepart,date )
DAY ( date )
GETDATE ()
MONTH ( date )
YEAR ( date )
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
程序清单 2-33:从 GETDATE函数返回的日期中
提取月份数。
? SELECT DATEPART(month,GETDATE())
AS 'Month Number'
? 运行结果为,
? Month Number
? ------------
? 2
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
程序清单 2-34:从日期 03/12/1998 中返回月份数、天
数和年份数。
? SELECT MONTH('03/12/1998'),
DAY('03/12/1998'),YEAR('03/12/1998')
? 运行结果为,
? ----- ------ ------
? 3 12 1998
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3.数学函数
?数学函数用于对数字表达式进行数学
运算并返回运算结果。数学函数可以
对 SQL Server提供的数字数据
( decimal,integer,float,real、
money,smallmoney,smallint 和
tinyint)进行处理。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
程序清单 2-35,
?在同一表达式中使用 CEILING(),FLOOR()、
ROUND()函数。
?select ceiling(13.4),floor(13.4),
round(13.4567,3)
?运行结果为,
?--------- --------- -------
?14 13 13.4570
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.转换函数
?一般情况下, SQL Server会自动处理某些数
据类型的转换 。 例如, 如果比较 char 和
datetime 表达式, smallint 和 int 表达式, 或不
同长度的 char 表达式, SQL Server 可以将它
们自动转换, 这种转换被称为隐性转换 。 但是,
无法由 SQL Server自动转换的或者是 SQL
Server自动转换的结果不符合预期结果的, 就
需要使用转换函数做显示转换 。 转换函数有两
个,CONVERT和 CAST。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
CONVERT和 CAST函数
?CAST ( expression AS data_type )
?CONVERT函数允许用户把表达式从一种数据
类型转换成另一种数据类型, 还允许把日期转
换成不同的样式 。 其语法形式为,
?CONVERT
(data_type[(length)],expression
[,style])
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
程序清单 2-36,
?USE pubs
?SELECT title,ytd_sales
?FROM titles
?WHERE CAST(ytd_sales AS char(20)) LIKE '15%'
? AND type = 'trad_cook'
?运行结果为,
?Title ytd_sales
?------------------------------
?Fifty Years in Buckingham Palace Kitchens 15096
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.系统函数
?系统函数用于返回有关 SQL Server系统、
用户、数据库和数据库对象的信息。系统
函数可以让用户在得到信息后,使用条件
语句,根据返回的信息进行不同的操作。
与其它函数一样,可以在 SELECT语句的
SELECT和 WHERE子句以及表达式中使
用系统函数。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
程序清单 2-38
?返回 Northwind 数据库的 Employees 表中的首
列的名称 。
?USE Northwind
?SELECT
COL_NAME(OBJECT_ID('Employees'),1)
?运行结果为,
?EmployeeID
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
6.聚合函数
?聚合函数可以返回整个或者几个列或
者一个列的汇总数据,它常用来计算
SELECT语句查询的统计值。聚合函数
经常与 SELECT 语句的 GROUP BY
子句一同使用。常用的聚合函数 应用
举例,程序清单 2-41至 2-44如下,
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2.5.5 流程控制语句
?流程控制语句是指那些用来控制程序执
行和流程分支的命令,在 SQL Server
2000中,流程控制语句主要用来控制
SQL语句、语句块或者存储过程的执行
流程。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,IF…ELSE 语句
?IF…ELSE 语句是条件判断语句,其
中,ELSE子句是可选的,最简单的 IF
语句没有 ELSE子句部分。 IF…ELSE
语句用来判断当某一条件成立时执行
某段程序,条件不成立时执行另一段
程序。 SQL Server允许嵌套使用
IF…ELSE 语句,而且嵌套层数没有限
制。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
IF…ELSE 语句的语法形式
?IF Boolean_expression
{ sql_statement |
statement_block }
[ ELSE
{ sql_statement |
statement_block } ]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,BEGIN…END 语句
?BEGIN…END 语句能够将多个 Transact-
SQL语句组合成一个语句块,并将它们视
为一个单元处理。在条件语句和循环等控
制流程语句中,当符合特定条件便要执行
两个或者多个语句时,就需要使用
BEGIN…END 语句,其语法形式为,
?BEGIN
{ sql_statement
| statement_block
}
END
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3,CASE函数
?CASE函数可以计算多个条件式,
并将其中一个符合条件的结果表
达式返回。 CASE函数按照使用形
式的不同,可以分为简单 CASE函
数和搜索 CASE函数。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,CASE函数的语法形式
? CASE input_expression
WHEN when_expression THEN
result_expression
[,..n ]
[
ELSE else_result_expression
END
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2、搜索 CASE函数的语法形式
? CASE
WHEN Boolean_expression THEN
result_expression
[,..n ]
[
ELSE else_result_expression
END
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4,WHILE…CONTINUE…BREAK 语句
?WHILE…CONTINUE…BREAK 语
句用于设置重复执行 SQL 语句或语句
块的条件。只要指定的条件为真,就
重复执行语句。其中,CONTINUE语
句可以使程序跳过 CONTINUE语句后
面的语句,回到 WHILE循环的第一行
命令。 BREAK语句则使程序完全跳出
循环,结束 WHILE语句的执行。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
结束 WHILE语句的语法形式为,
?WHILE Boolean_expression
{ sql_statement | statement_block }
[ BREAK ]
{ sql_statement | statement_block }
[ CONTINUE ]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5,GOTO语句
?GOTO语句可以使程序直接跳到指定
的标有标识符的位置处继续执行,而
位于 GOTO语句和标识符之间的程序
将不会被执行。 GOTO语句和标识符
可以用在语句块、批处理和存储过程
中,标识符可以为数字与字符的组合,
但必须以“:”结尾。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
GOTO语句的语法形式
?GOTO label
?……
?label,
?程序清单 2-50:利用 GOTO语句求出从 1加到 5的总和。
?declare @sum int,@count int
?select @sum=0,@count=1
?label_1,
?select @sum=@sum+@count
?select @count=@count+1
?if @count<=5
?goto label_1
?select @count @sum
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
6,WAITFOR语句
?WAITFOR语句用于暂时停止执行 SQL
语句、语句块或者存储过程等,直到所设
定的时间已过或者所设定的时间已到才继
续执行。 WAITFOR语句的语法形式为,
?WAITFOR { DELAY 'time' | TIME
'time' }
?其中,DELAY用于指定时间间隔,
TIME用于指定某一时刻,其数据类型为
datetime,格式为‘ hh:mm:ss’。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
7,RETURN语句
?RETURN语句用于无条件地终止一个查
询, 存储过程或者批处理, 此时位于
RETURN语句之后的程序将不会被执行 。
RETURN语句的语法形式为,
?RETURN [ integer_expression ]
?其中, 参数 integer_expression为返回的整
型值 。 存储过程可以给调用过程或应用程
序返回整型值 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
第 3章 服务器管理
? 3.1 创建服务器组
? 3.2 服务器注册
? 3.3 服务器启动、暂停和停止
? 3.4 服务器连接与断开
? 3.5 服务器配置选项设置
上一章
返回目录
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3.1 创建服务器组
? 在一个网络系统中,可能有多个 SQL Server服务器,可
以对这些 SQL Server服务器进行分组管理。分组的原则
往往是依据组织结构原则。 SQL Server分组管理由企业
管理器( Enterprise Manager)来进行。首次启动企业管
理器时,有一个名字叫,SQL Server 组”的默认服务器
组自动被创建,但用户可以创建新的 SQL Server组,在
企业管理器菜单中单击操作( Action)菜单或者用右键单
击 SQL Servers组,选择新建 SQL Server 组菜单项,如图
3-1所示。
? 接着出现服务器组对话框,如图 3-2所示,输入组的名称
并选择组的级别,单击确定即可。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 3-1 新建 SQL Server组
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 3-2 创建服务器组对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3.2 服务器注册
? 所谓服务器注册是指将网络系统中的其
它 SQL Server服务器注册到企业管理器
中, 以便于管理 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
注册过程
? 1,在企业管理器中,从操作( Action)菜单中
选择新建 SQL Server注册,或从工具菜单中
选择注册服务器向导选项,或从工具栏中选
择图标,就会出现如图 3-3所示的注册
SQL Server向导对话框。
? 如果在对话框中选择“我希望今后在执行该
任务时不使用向导”复选框,按“下一步”
按钮就会转换到服务器注册属性对话框,如
图 3-4所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 3-3 注册服务器向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 3-4 服务器注册属性对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? 2,在注册服务器向导对话框中不
选择复选框,单击“下一步”按
钮,就会出现选择或创建服务器
名称对话框,如图 3-5所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 3-5 选择或创建服务器名称
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? 3,单击, 下一步, 按钮, 出现选择身份验
证模式对话框, 即选择 Windows NT身份验
证或 SQL Server身份验证 。 Windows NT身
份验证可以使用户只需维护, 使用一个
Windows NT登录帐户和口令, 而使用 SQL
Server身份验证, 则必须维护 Windows NT
登录帐户和 SQL Server登录帐户及口令 。
如图 3-6和图 3-7所示 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 3-6 选择身份验证模式
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 3-7 输入 SQL Server登录名和口令
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? 4,单击“下一步”按钮,就会出现选择服务器组或创
建服务器组对话框,如图 3-8所示
图 3-8 选择服务器组或创建服务器组
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? 5,服务器组确定后,单击“下一步”按钮,就会出现
确定注册对话框,单击“完成”按钮,则企业管理器
将注册服务器,如下图 3-9所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? 6,接着出现注册 SQL Server消息对话框,注册成功后,
按“关闭”按钮结束设置。

3-
10

册SQ
L Serv
er


上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3.3 服务器启动、暂停和停止
? 启动服务器,下面介绍常用的三种方法,
? 1,自动启动服务器
? 2,用 SQL Server 服务管理器启动
? 3,用企业管理器( Enterprise Manager)启动
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? 暂停和关闭服务器的方法与启动服务器的方法类似,
只需在相应的窗口中选择“暂停( Pause)”或“停
止( Stop)”选项即可。为了保险起见,我们通常会
在停止运行 SQL Server之前先暂停 SQL Server。其主
要原因在于,一旦暂停 SQL Server,将不再允许任何
新的上线者,然而原先已联机到 SQL Server的用户仍
然能继续作业,这样可以确保原来正在进行中的作业
不会中断,而可以持续进行并加以完成。
暂停和关闭服务器
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3.4 服务器连接与断开
? 一、服务器连接
? 在 SQL Server 企业管理器的 SQL Server组中
用左键单击所要连接的服务器, 或者用右键
单击所要连接的服务器, 从快捷菜单中选择
,连接, 选项, 即可连接 。 如果在注册服务
器时选择了在连接时提示输入 SQL Server 帐
户信息选项 ( 如图 3-7所示 ), 此时则会提示
输入这些信息, 如图 3-12所示 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 3-12 连接 SQL Server时的输入登录名和口令窗口
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3.5 服务器配置选项设置
? 使用 SQL Server企业管理器配置服务器的操作
方 法 为, 在 企 业 管 理 器 的 SQL Server 组
( Group) 中用右键单击所要进行配置的服务器,
从快捷菜单中选择, 属性 ( Properties), 选项,
就会出现如图 3-13所示的对话框, 其中可以进行
服务器的属性 ( 配置选项 ) 的设置 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 3-13 服务器属性设置对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
第 4章 数据库管理
? 4.1 数据库的存储结构
? 4.2 创建、修改和删除数据库
? 4.3 数据库备份
? 4.4 恢复数据库
? 4.5 数据库的维护
上一章 返回目录
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.1 数据库的存储结构
? 4.1.1 数据库文件
? 4.1.2 数据库文件组
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.1.1 数据库文件
? 逻辑存储结构和物理存储结构
? 一、数据库的逻辑存储结构指的是数据库是由哪些性质的
信息所组成,SQL Server的数据库不仅仅只是数据的存储,
所有与数据处理操作相关的信息都存储在数据库中。
? 二、数据库的物理存储结构则是讨论数据库文件是如何在
磁盘上存储的,数据库在磁盘上是以文件为单位存储的,
由数据库文件和事务日志文件组成,一个数据库至少应该
包含一个数据库文件和一个事务日志文件。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.1.1 数据库文件
? 1,主数据库文件( Primary Database File)
? 2,辅助数据库文件( Secondary Database File)
?
? 3,事务日志文件
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.1.2 数据库文件组
? 为了便于分配和管理,SQL Server允许将多个
文件归纳为同一组,并赋予此组一个名称,这
就是文件组。
? 与数据库文件一样,文件组也分为主文件组
( Primary File Group)和次文件组
( Secondary File Group)。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.2 创建、修改和删除数据库
? 4.2.1 创建数据库
? 4.2.2 修改数据库
? 4.2.3 删除数据库
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.2.1 创建数据库
? 每个数据库都由以下几个部分的数据
库对象所组成,
? 关系图、表、视图、存储过程、用户、
角色、规则、默认、用户自定义数据
类型和用户自定义函数。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
创建数据库的方法
使用向导创建数据库
使用企业管理器( Enterprise Manager)创
建数据库
使用 Transact-SQL语言创建数据库。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
(一)使用向导创建数据库
? 以下图 4-1 到图 4-8是使用向导创建数据库,
用户根据提示操作,即可创建数据库。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材

4-
1







上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-2 欢迎使用创建数据库向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-3 输入数据库名称和文件位置对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-4 定义数据库文件逻辑名称及初始大小对话话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-5 定义数据库增长信息对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-6 定义事务日志文件名称及初始大小对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-7 定义事务日志文件增长信息对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-8 确认创建数据库对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
( 2)使用企业管理器创建数据库
?( 1 ) 在企业管理器中, 单击工具栏中的 图标, 或在数据库文
件夹或其下属任一数据库图标上单击右键, 选择新建数据库选项,
就会出现如图 4-9所示的对话框 。
?(2)在常规( General)页框中,要求用户输入数据库名称以及
排序规则名称。
?(3)点击数据文件( Data Files)页框,该页框用来输入数据库文
件的逻辑名称、存储位置、初始容量大小和所属文件组名称,如图
4-10所示。
?(4)点击事务日志( Transaction Log)页框,该页框用来设置事
务日志文件信息,如图 4-11所示。
?(5)单击图 4-11中的“确定”按钮,则开始创建新的数据库。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-9 创建数据库对话框中的常规页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-10 创建数据库对话框中的数据文件页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-11 创建数据库对话框中的事务日志页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
( 3) 使用 Transact-SQL语言创建数据库,语法如下,
?CREATE DATABASE database_name
?[ON [PRIMARY] [<filespec> [,… n] [,
<filegroupspec> [,… n]] ]
? [LOG ON {<filespec> [,… n]}]
? [FOR RESTORE]
?<filespec>::=([NAME=logical_file_name,]
?FILENAME=‘os_file_name’
?[,SIZE=size]
?[,MAXSIZE={max_size|UNLIMITED}]
?[,FILEGROWTH=growth_increment] ) [,… n]
?<filegroupspec>::=FILEGROUP filegroup_name
<filespec> [,… n]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
?database_name:数据库的名称,最长为 128个字符。
?PRIMARY:该选项是一个关键字,指定主文件组中
的文件。
?LOG ON:指明事务日志文件的明确定义。
?NAME:指定数据库的逻辑名称,这是在 SQL Server
系统中使用的名称,是数据库在 SQL Server中的标识
符。
各参数说明如下,
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
?FILENAME:指定数据库所在文件的操作系统文
件名称和路径,该操作系统文件名和 NAME的逻
辑名称一一对应。
?SIZE:指定数据库的初始容量大小。
?MAXSIZE:指定操作系统文件可以增长到的最大
尺寸。
?FILEGROWTH:指定文件每次增加容量的大小,
当指定数据为 0时,表示文件不增长。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 4-1:创建了一个 Company数据库
? 创建了一个 Company数据库,该数据库的主数据文件
逻辑名称为 Company_data,物理文件名为 Company.mdf,
初始大小为 10MB,最大尺寸为无限大,增长速度为 10%;
数据库的日志文件逻辑名称为 Company_log,物理文件名
为 Company.ldf,初始大小为 1MB,最大尺寸为 5MB,增长
速度为 1MB。
? 程序清单 4-1,
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 4-2,创建一个指定多个数据文件和日志文件的数据库
? 该数据库名称为 employees,有 1个 10MB和 1个 20MB的数据
文件和 2个 10MB的事务日志文件。数据文件逻辑名称为 employee1
和 employee2,物理文件名为 employee1.mdf和 employee2.mdf。主
文件是 employee1,由 primary指定,两个数据文件的最大尺寸分
别为无限大和 100MB,增长速度分别为 10%和 1MB。事务日志文
件的逻辑名为 employeelog1和 employeelog2,物理文件名为
employeelog1.ldf和 employeelog2.ldf,最大尺寸均为 50MB,文件
增长速度为 1MB。
? 其源程序为,
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.2.2 修改数据库
? 1,利用企业管理器修改数据库
? 2,使用 ALTER DATABASE语句修改数据库
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,利用企业管理器修改数据库
? 设置中的各选项说明如下,
? ANSI NULL默认设置:允许在数据库表的列中输入空
( NULL)值。
? 递归触发器:允许触发器递归调用。 SQL Server设定的触
发器递归调用的层数最多为 32层。
? 自动更新统计信息:允许使用 SELECT INTO或 BCP、
WRITETEXT,UPDATETEXT命令向表中大量插入数据。
? 残缺页检测:允许自动检测有损坏的页。
? 自动关闭:当数据库中无用户时,自动关闭该数据库,并
将所占用的资源交还给操作系统。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? 自动收缩:允许定期对数据库进行检查, 当数据库
文件或日志文件的未用空间超过其大小的 25%时,
系统将会自动缩减文件使其未用空间等于 25%。
? 自动创建统计信息:在优化查询 ( Query Optimizer)
时, 根据需要自动创建统计信息 。
? 使用被引用的标识符:标识符必须用双引号括起来,
且可以不遵循 Transact-SQL命名标准 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,使用 ALTER DATABASE语句修改数据库语法形
式如下,
?Alter database databasename
?{add file<filespec>[,… n] [to filegroup
filegroupname]
?|add log file <filespec>[,… n]
?|remove file logical_file_name [with delete]
?|modify file <filespec>
?|modify name=new_databasename
?|add filegroup filegroup_name
?|remove filegroup filegroup_name
?|modify filegroup filegroup_name
?{filegroup_property|name=new_filegroup_name}}
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 4-3
? 例子 4-3:添加一个包含两个数据文件的文件组
和一个事务日志文件到 employees数据库中 。
? 程序清单 4-3,
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.2.3 删除数据库
?1.利用企业管理器删除数据库
?2,利用 Drop语句删除数据库
? Drop语句可以从 SQL Server中一次删除一个或多个
数据库 。 其语法如下,
?Drop database database_name[,… n]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 4-4:删除创建的数据库 company。
?程序清单 4-4,
?drop database company
?输出结果为,
?Deleting database file
'd:\mssql7\data\company.ldf',
?Deleting database file
'd:\mssql7\data\company.mdf',
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.3 数据库备份
4.3.1 备份概述
4.3.2 创建备份设备
4.3.3 备份的执行
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.3.1 备份概述
? 备份就是对 SQL Server数据库或事务日
志进行备份,数据库备份记录了在进行
备份这一操作时数据库中所有数据的状
态,以便在数据库遭到破坏时能够及时
地将其恢复。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
SQL Server 2000四种备份方式
? (一)完全数据库备份( Dadabase-complete)
? (二)差异备份或称增量备份( Dadabase-
differential)
? (三)事务日志备份( Transaction log)
? (四)数据库文件和文件组备份( File and
filegroup)
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.3.2 创建备份设备
? 在进行备份以前首先必须指定或创建备份设备,
备份设备是用来存储数据库, 事务日志或文件和文
件组备份的存储介质, 备份设备可以是硬盘, 磁带
或管道 。 当使用磁盘时, SQL Server允许将本地主
机硬盘和远程主机上的硬盘作为备份设备, 备份设
备在硬盘中是以文件的方式存储的 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
创建备份设备的两种方法,
?1,使用 SQL Server 企业管理器创建备份设备
?如图 4-17---4-18所示 。
?2,使用系统存储过程创建备份设备
?在 SQL Server 中, 可以使用 sp_addumpdevice语句创
建备份设备, 其语法形式如下,
?sp_addumpdevice {‘device_type’}
?[,’logical_name’][,’physical_name’][,{{controller_type|’
device_status’}}]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-17 使用企业管理器创建备份设备
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-18 输入备份设备属性对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 4-5:在磁盘上创建了一个备份设备
?程序清单 4-5,
?use master
? exec sp_addumpdevice ‘disk’,
‘backup_company’,
‘c:\mssql7\backup\bk_company.bak’
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
删除备份设备
?删除备份设备与创建的过程类似,只须在企业管理器中选中
要删除的备份设备,在弹出的菜单中选择删除选项即可删除该
备份设备。或者使用 sp_dropdevice语句来删除备份设备。其
语法如下,
?sp_dropdevice [‘logical_name’][,’delfile’]
?例子 4-6:删除上面创建的备份设备
?sp_dropdevice ‘backup_company’,
‘c:\mssql7\backup\bk_company.bak’
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.3.3 备份的执行
? SQL Server系统提供了三种数据库备份操作
的方法,
? (1)SQL Server 企业管理器
? (2)备份向导
? (3)Transact-SQL语句 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1, 使用 SQL Server 企业管理器进行备份
?(1)启动企业管理器,登录到指定的数据库服务器,打
开数据库文件夹,用右键单击所要进行备份的数据库图标,
在弹出的快捷菜单中选择所有任务,再选择备份数据库 。
?( 2 ) 出现 SQL Server备份对话框, 对话框中有两个页框,
即常规和选项页框 。
?( 3 ) 在常规页框中, 选择备份数据库的名称, 操作的名
称, 描述信息, 备份的类型, 备份的介质, 备份的执行时间 。
?( 4 ) 通过单击添加按钮选择备份设备 。
?( 5 ) 选择调度复选框, 来改变备份的时间安排 。
?( 6 ) 在选项页框中进行附加设置 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2, 使用备份向导 (图 4-25 --图 4-31)
图 4-25 欢迎使用向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-26 选择数据库对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-27 输入备份名称和描述信息对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-28 选择备份数据库类型对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-29 设置备份介质类型和属性对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-30 备份验证和调度对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-31 确认执行备份操作对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3,使用 Transact-SQL语句备份数据库
?其语法形式如下,
?Backup database
?{database_name|@database_name_var}
?to
?<backup_file>[,… n]
?[with
?[[,]format]
?[[,]{init|noinit}]
?[[,]restart]
?]
?<backup_file>::={backup_file_name|@backup_file_ev
ar}|{disk|tape|pipe}
?={temp_file_name|@temp_file_name_evar}
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.4 恢复数据库
4.4.1 恢复概述
4.4.2 恢复数据库
4.4.3 恢复系统数据库
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.4.1 恢复概述
? 数据库备份后,一旦系统发生崩溃或者执行了错
误的数据库操作,就可以从备份文件中恢复数据
库。数据库恢复是指将数据库备份加载到系统中
的过程。系统在恢复数据库的过程中,自动执行
安全性检查、重建数据库结构以及完整数据库内
容。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.4.2 恢复数据库
?使用企业管理器恢复数据库
?( 1) 打开企业管理器, 单击要登录的数据库服
务器, 然后从主菜单中选择工具, 在菜单中选择
还原数据库命令 。
?( 2) 在还原为数据库旁的下拉列表中选择要恢
复的数据库, 在还原组中通过单击单选按钮来选
择相应的数据库备份类型 。
?( 3) 选中选项页框, 进行其它选项的设置 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
?其语法形式如下,
?Restore database
?[from <backup_device[],… n>]
?[with
?[[,]file=file_number]
?[[,]move ‘logical_file_name’ to
‘operating_system_file_name’]
?[[,]replace]
?[[,]{norecovery|recovery|standby=undo_file_name}]
?]
?<backup_device>::={{backup_device_name|@backup_devic
e_name_evar}
?|{disk|tape|pipe}
2,使用 Transact-SQL语句恢复数据库
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 4-7:从备份设备中恢复数据库
?从 backup_company备份设备中恢复数据库 company。
?程序清单 4-7,
?use master
?restore database company
?from backup_company
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.4.3 恢复系统数据库
? 1,关闭 SQL Server,运行系统安装目录下的 bin子
目录下的 rebuilem.exe文件, 这是个命令行程序,
运行后可以重新创建系统数据库 。
? 2,系统数据库重新建立后, 启动 SQL Server。
? 3,SQL Server启动后, 系统数据库是空的, 没有
任何系统信息 。 因此, 需要从备份数据库中恢复 。
一般是先恢复 master数据库, 再恢复 msdb数据库,
最后恢复 model数据库 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4.5 数据库的维护
? 利用数据库的维护计划向导可以方便地设置数
据库的核心维护任务,以便于定期地执行这些任务,
其创建数据库维护计划的步骤如下,
? 如图 4-35--图 4-49所示
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-35 选择数据库维护计划对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-36 欢迎使用维护计划向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-37 选择数据库对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-38 更新数据优化信息对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-39 编辑循环作业调度对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-40 检查数据库完整性对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-41 指定数据库备份计划对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-42 指定数据库备份文件存放目录对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-43 指定事务日志备份计划对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-44 指定事务志文件备份存放目录对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-45 维护计划生成报表对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-46 指定维护计划历史记录存放位置对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-47 指定数据库维护计划名称对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-48 数据库维护计划对象选择对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 4-49 数据库维护计划编辑对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
第 5章 数据库对象的操作
5.1 数据类型
5.2 表操作
5.3 视图操作
5.4 索引操作
5.5 存储过程
5.6 触发器
5.7 图 表
上一章 返回目录
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.1 数据类型
? 5.1.1 系统数据类型
? 5.1.2 自定义数据类型
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.1.1 系统数据类型
1,整型数据类型
2,浮点数据类型
3,字符数据类型
4,日期和时间数据类型
5,文本和图形数据类型
6,货币数据类型
7,位数据类型
8,二进制数据类型
9,特殊数据类型
10,新增数据类型
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,整型数据类型
? 整型数据类型是最常用的数据类型之一,它主要用
来存储数值,可以直接进行数据运算,而不必使用
函数转换。
? int( integer),int(或 integer)数据类型可以存储
从 -231( -2,147,483,648)到 231-1( 2,147,483,
647)范围之间的所有正负整数。
? Smallint:可以存储从 -215( -32,768)到 215-1范围
之间的所有正负整数 。
? Tinyint:可以存储从 0到 255范围之间的所有正整数。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,浮点数据类型
? 浮点数据类型用于存储十进制小数。浮点数值的
数据在 SQL Server中采用只入不舍的方式进行存
储 。
? Real:可以存储正的或者负的十进制数值,最大
可以有 7位精确位数。
? Float:可以精确到第 15位小数,其范围从 -1.79E-
308到 1.79E+308。
? Decimal和 numeric,Decimal数据类型和 numeric
数据类型完全相同,它们可以提供小数所需要的
实际存储空间,但也有一定的限制,可以用 2到 17
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3,字符数据类型
? 字符数据类型可以用来存储各种字母、数字符号
和特殊符号。
? Char:其定义形式为 char( n),每个字符和符
号占用一个字节的存储空间。
? Varchar:其定义形式为 varchar( n)。用 char数
据类型可以存储长达 255个字符的可变长度字符串 。
? Nchar:其定义形式为 nchar( n)。
? Nvarchar:其定义形式为 nvarchar( n)。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4,日期和时间数据类型
? Datetime:用于存储日期和时间的结合体 。它可
以存储从公元 1753年 1月 1日零时起到公元 9999年
12月 31日 23时 59分 59秒之间的所有日期和时间 。
? Smalldatetime:与 datetime数据类型类似,但其日
期时间范围较小,它存储从 1900年 1月 1日到 2079
年 6月 6日内的日期。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5,文本和图形数据类型
? Text:用于存储大量文本数据, 其容量理论上为 1
到 231-1( 2,147,483,647) 个字节, 但实际应
用时要根据硬盘的存储空间而定 。
? Ntext:与 text数据类型类似, 存储在其中的数据
通常是直接能输出到显示设备上的字符, 显示设
备可以是显示器, 窗口或者打印机 。
? Image:用于存储照片, 目录图片或者图画, 其理
论容量为 231-1( 2,147,483,647) 个字节 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
6,货币数据类型
? Money:用于存储货币值,存储在 money数据类型
中的数值以一个正数部分和一个小数部分存储在两
个 4字节的整型值中,存储范围为 -
922337213685477.5808到 922337213685477.5808,精
度为货币单位的万分之一。
? Smallmoney:与 money数据类型类似,但其存储的
货币值范围比 money数据类型小,其存储范围为 -
214748.3468到 214748.3467。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
7,位数据类型
? Bit:称为位数据类型,其数据有两种取值:
0和 1,长度为 1字节。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
8,二进制数据类型
? Binary:其定义形式为 binary(n),数据的存储长
度是固定的, 即 n+4字节, 当输入的二进制数据长
度小于 n时, 余下部分填充 0。
? Varbinary:其定义形式为 varbinary(n),数据的
存储长度是变化的, 它为实际所输入数据的长度
加上 4字节 。 其它含义同 binary。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
9,特殊数据类型
? Timestamp:亦称时间戳数据类型, 它提供数据库
范围内的唯一值, 反应数据库中数据修改的相对
顺序, 相 当 于 一 个 单 调 上 升 的 计 数 器 。
Uniqueidentifier:用于存储一个 16字节长的二进
制数据类型, 它是 SQL Server根据计算机网络适
配器地址和 CPU时钟产生的唯一号码而生成的全
局唯一标识符代码 ( Globally Unique Identifier,
简写为 GUID) 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
10,新增数据类型
? Bigint:用于存储从 -263( -9,223,372,036,
854,775,807) 到 263-1( 9,223,372,036,
854,775,807) 之间的所有正负整数 。
? sql_variant,用于存储除文本, 图形数据和
timestamp 类型数据外的其它任何合法的 SQL
Server数据 。
? table:用于存储对表或者视图处理后的结果集 。
这种新的数据类型使得变量可以存储一个表, 从
而使函数或过程返回查询结果更加方便, 快捷 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.1.2 自定义数据类型
? 1,使用企业管理器 ( Enterprise Manager) 创建用
户自定义数据类型 。
? 2,利用系统存储过程创建用户自定义数据类型 。
? 系统存储过程 sp_addtype为用户提供了 T_SQL语句
创建自定义数据类型的途径, 其语法形式如下,
? sp_addtype [@typename=] type,
? [@phystype=] system_data_type
? [,[@nulltype=] ‘null_type’]
? [,[@owner=] ‘owner_name’]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 5-1:自定义一个地址数据类型。
?exec sp_addtype address,
‘varchar(80)’,‘not null’
?其运行结果如下,
?( 1 row(s) affected)
?type added,
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 5-2:删除自定义的生日数据类型。
? exec sp_droptype birthday
? 其运行结果如下,
? ( 1 row(s) affected)
? ( 0 row(s) affected)
? Type has been dropped,
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.2 表操作
5.2.1 创建表
5.2.2 增加, 删除和修改字段
5.2.3 创建, 删除和修改约束
5.2.4 查看表格
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.2.1 创建表
? 在 SQL Server 2000中,每个数据库中最多可以创
建 200万个表,用户创建数据库表时,最多可以定
义 1024列,也就是可以定义 1024个字段。
? SQL Server 2000提供了两种方法创建数据库表,
第一种方法是利用企业管理器( Enterprise
Manager)创建表;另一种方法是利用 Transact-
SQL语句中的 create命令创建表。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,利用 Enterprise Manager创建表
? 在 Enterprise Manager中,展开指定的服务器和数
据库,打开想要创建新表的数据库,用右键单击
表对象,从弹出的快捷菜单中选择新建表选项,
或者在工具栏中选择图标,就会出现新建表对话
框,在该对话框中,可以定义列的以下属性:列
名称、数据类型、长度、精度、小数位数、是否
允许为空、缺省值、标识列、标识列的初始值、
标识列的增量值和是否有行的标识。 然后根据提
示进行设置。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,利用 create命令创建表
?其语法形式如下,
?CREATE TABLE
[ database_name.[ owner ],| owner.]
table_name
( { < column_definition >|
column_name AS
computed_column_expression|
?< table_constraint >} [,… n])
[ ON { filegroup | DEFAULT } ]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
创建表的各参数的说明如下,
database_name:用于指定在其中创建表的数据库名称。
owner:用于指定新建表的所有者的用户名 。
table_name:用于指定新建的表的名称。
column_name:用于指定新建表的列的名称。
computed_column_expression:用于指定计算列的列值的表
达式。
ON {filegroup | DEFAULT}:用于指定存储表的文件组名。
TEXTIMAGE_ON:用于指定 text,ntext 和 image 列的数
据存储的文件组。
data_type:用于指定列的数据类型 。
DEFAULT:用于指定列的缺省值。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
constant_expression:用于指定列的缺省值的常量表达式 。
IDENTITY:用于指定列为标识列。
Seed:用于指定标识列的初始值。
Increment:用于指定标识列的增量值。
NOT FOR REPLICATION:用于指定列的 IDENTITY属性
在把从其它表中复制的数据插入到表中时不发生作用,即不
足的生成列值,使得复制的数据行保持原来的列值。
ROWGUIDCOL:用于指定列为全球唯一鉴别行号列 。
COLLATE:用于指定表使用的校验方式。
column_constraint和 table_constraint:用于指定列约束和表
约束。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 5-3:创建了一个雇员信息表
?其 SQL语句的程序清单如下,
?CREATE TABLE employee
?( number int not null,
? name varchar(20) NOT NULL,
? sex char(2) NULL,
? birthday datetime null,
? hire_date datetime NOT NULL
? DEFAULT (getdate())
? professional_title varchar(10) null,
? salary money null,
? memo ntext null
?)
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.2.2 增加、删除和修改字段
? 利用企业管理器增加、删除和修改字段 。在
企业管理器中,打开指定的服务器中要修改表的
数据库,用右键单击要进行修改的表,从弹出的
快捷菜单中选择设计表选项,则会出现设计表对
话框,在该对话框中,可以利用图形化工具完成
增加、删除和修改字段的操作。
? 利用 Transact-SQL语言中的 alter table命令增
加、删除和修改字段。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
利用 Transact-SQL语言中的 alter table命令增加、删除和修改
字段的各参数的说明如下,
table,用于指定要修改的表的名称。
ALTER COLUMN,用于指定要变更或者修改数据类型的列。
column_name,用于指定要更改、添加或删除的列的名称。
new_data_type,用于指定新的数据类型的名称。
precision,用于指定新的数据类型的精度。
scale,用于指定新的数据类型的小数位数。
NULL | NOT NULL,用于指定该列是否可以接受空值。
{ADD | DROP} ROWGUIDCOL, 用于指定在某列上添加或
删除 ROWGUIDCOL 属性。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
ADD,用于指定要添加一个或多个列定义, 计算列
定义或者表约束 。
computed_column_expression,用于指定一个计算列
的计算表达式 。
WITH CHECK | WITH NOCHECK,用于指定已经
存在于表中的数据是否需要使用新添加的或者刚启
用的 FOREIGN KEY 或 CHECK 约束进行验证 。
DROP { [CONSTRAINT] constraint_name |
COLUMN column_name },用于指定从表中删除的
约束或者列的名称 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
{ CHECK | NOCHECK} CONSTRAINT:用于指定启
用或禁用 FOREIGN KEY或者 CHECK约束 。
ALL,用于指定使用 NOCHECK 选项禁用所有的约束,
或者使用 CHECK 选项启用所有约束 。
{ENABLE | DISABLE} TRIGGER:用于指定启用或禁
用触发器 。 当一个触发器被禁用时, 它对表的定义依然
存在;然而, 当在表上执行 INSERT,UPDATE 或
DELETE 语句时, 触发器中的操作将不执行, 除非重新
启用该触发器 。
ALL,用于指定启用或禁用表中所有的触发器 。
trigger_name,指定要启用或禁用的触发器名称 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 5-4:创建了一个雇员信息表
?其 SQL语句的程序清单如下,
?create table employees(
?id char(8) primary key
?name char(20) not null,
?department char(20) null,
?memo char(30) null
?age int null,
?)
?alter table employees
? add salary int null
? drop column age
?alter column memo varchar(200) null
?
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.2.3 创建、删除和修改约束
? 在 SQL Server 2000中有 5种约束,
主键约束( primary key constraint)
唯一性约束( unique constraint)
检查约束( check constraint)
缺省约束( default constraint)
外部键约束( foreign key constraint)
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,主键约束
?主键的添加、删除和修改操作方法有两种,
?(一)企业管理器操作法,在企业管理器中,用右
键单击要操作的数据库表,从弹出的快捷菜单中选
择设计表选项,然后根据提示操作。
?(二) Transact-SQL语句操作法。
?其语法形式如下,
?CONSTRAINT constraint_name
? PRIMARY KEY
[CLUSTERED|NONCLUSTERED]
? ( column_name[,… n])
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
主键约束各参数的说明如下
constraint_name:用于指定约束的名称, 约束的
名称在数据库中应该是唯一的 。 如果不指定, 则
系统会自动生成一个约束名 。
LUSTERED|NONCLUSTERED:用于指定索引
的类型, 即 聚 簇 索 引 或 者 非 聚 簇 索 引,
CLUSTERED为默认值 。
column_name:用于指定主键的列名 。 主键最多
由 16个列组成 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 5-5
?在执行创建产品信息表的操作时,指定产品编号为主键值,并
且创建一个聚簇索引。
?create table products(
?id char(10) not null,
?name char(20) not null
?price money default 0.01
?quantity smallint null
?constraint pk_id primary key clustered
(id)
?)
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,唯一性约束
?唯一性约束用于指定一个或者多个列的组合的值具
有唯一性,以防止在列中输入重复的值。当使用唯一
性约束时,需要考虑以下几个因素,
?① 使用唯一性约束的字段允许为空值 。
?② 一个表中可以允许有多个唯一性约束 。
?③ 可以把唯一性约束定义在多个字段上 。
?④ 唯一性约束用于强制在指定字段上创建一个唯一
性索引 。
? ⑤ 缺省情况下, 创建的索引类型为非聚簇索引 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
创建和修改唯一性约束的操作方法
?创建和修改唯一性约束的操作方法有两种,
?( 一 ) 企业管理器操作法, 通过企业管理器可以完
成创建和修改唯一性约束的操作 。
?( 二 ) Transact-SQL语句操作法 。
?CONSTRAINT constraint_name
? UNIQUE [CLUSTERED|NONCLUSTERED]
?( column_name[,… n])
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3,检查约束
一个列级检查约束只能与限制的字段有关;一个
表级检查约束只能与限制的表中字段有关。
一个表中可以定义多个检查约束。
每个 CREATE TABLE语句中每个字段只能定义
一个检查约束。
在多个字段上定义检查约束,则必须将检查约束
定义为表级约束。
当执行 INSERT语句或者 UPDATE语句时,检查
约束将验证数据。
检查约束中不能包含子查询。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
创建检查约束常用的操作方法有两种,
?1.企业管理器操作法。使用企业管理器创建检查约
束,与创建唯一性约束类似 。
?2.Transact-SQL语句操作法。检查约束的 Transact-
SQL语句操作法,其语法形式如下,
?CONSTRAINT constraint_name
? CHECK [NOT FOR REPLICATION]
? (logical_expression)
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 5-7,
?创建了一个学生信息表,其中输入性别字段值时,只能接受
,F”或者,M”,并且为 phonenum字段创建检查约束,限制只
能输入类似 01080798654之类的数据,而不能随意输入其他数据。
?create table student(
?Id char(8)
?name char(8)
?sex char(2)
?phonenum int
?constraint chk_sex check( sex in ( ’ F’,’M’))
?Constraint chk_phonenum check
?( phonenum like ‘(010)[0-9][0-9][0-9][0-9] [0-
9][0-9][0-9][0-9]’)
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4,缺省约束
? 使用缺省约束时,应该注意以下几点,
每个字段只能定义一个缺省约束。
如果定义的缺省值长于其对应字段的允许长度,
那么输入到表中的缺省值将被截断。
不能加入到带有 IDENTITY属性或者数据类型为
timestamp的字段上。
如果字段定义为用户定义的数据类型,而且有一
个缺省绑定到这个数据类型上,则不允许该字段
有缺省约束。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5,外部键约束
? 外部键约束用于强制参照完整性,提供单个字段
或者多个字段的参照完整性。当使用外部键约束
时,应该考虑以下几个因素,
?① 外部键约束提供了字段参照完整性 。
?② 外部键从句中的字段数目和每个字段指定的数
据类型必须和 REFERENCES从句中的字段相匹配 。
?③ 外部键约束不能自动创建索引, 需要用户手动
创建 。
?
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? ④ 用户想要修改外部键约束的数据, 必须有
对外部键约束所参考表的 SELECT权限或者
REFERENCES权限 。
? ⑤ 参考同一表中的字段时, 必须只使用
REFERENCES子句, 不能使用外部键子句 。
? ⑥ 一个表中最多可以有 31个外部键约束 。
? ⑦ 在临时表中, 不能使用外部键约束 。
? ⑧ 主键和外部键的数据类型必须严格匹配 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.2.4 查看表格
?查看表格的定义
?2,查看表格中的数据
?3,查看表格与其它数据库对象的依赖关系
?4,利用系统存储过程 Sp_help查看表的信息
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 5-10,
? ⑴ 显示当前数据库中所有对象的信息;
? ⑵显示表 word的信息。在查询分析器( Query
Analyzer)中它们对应的语句和运行结果如图 5-
24(a)和图 5-24(b)所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-24(a) 当前数据库对象显示窗口
图 5-24(b) 表 word显示窗口
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.2.5 删除表
? 1,利用企业管理器删除表
? 在企业管理器中,展开指定的数据库和表格项,
用右键单击要删除的表,从快捷菜单中选择“除去表”
选项,则会出现除去对象对话框。单击“全部删除”
按钮,即可删除表。
? 2,利用 DROP TABLE语句删除表
? DROP TABLE语句可以删除一个表和表中的数
据及其与表有关的所有索引, 触发器, 约束, 许可对
象 。 DROP TABLE语句的语法形式如下,
? DROP TABLE table_name
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? 5.3.1 创建视图
? 5.3.2 修改和重命名视图
? 5.3.3 查看视图信息、删除视图
? 5.3.4 通过视图修改记录
5.3 视图操作
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? 视图是从一个或者多个表或视图中导出的表,
其结构和数据是建立在对表的查询基础上的。和真
实的表一样,视图也包括几个被定义的数据列和多
个数据行,但从本质上讲,这些数据列和数据行来
源于其所引用的表。因此,视图不是真实存在的基
础表而是一个虚拟表,视图所对应的数据并不实际
地以视图结构存储在数据库中,而是存储在视图所
引用的表中。
视图的概念,
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
使用视图的优点和作用
? ① 可以使视图集中数据、简化和定制不同用
户对数据库的不同数据要求。
? ②使用视图可以屏蔽数据的复杂性,用户不
必了解数据库的结构,就可以方便地使用和管理
数据,简化数据权限管理和重新组织数据以便输
出到其他应用程序中。
? ③视图可以使用户只关心他感兴趣的某些特
定数据和他们所负责的特定任务,而那些不需要
的或者无用的数据则不在视图中显示。
? ④视图大大地简化了用户对数据的操作。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? ⑤ 视图可以让不同的用户以不同的方式看到不
同或者相同的数据集。
? ⑥在某些情况下,由于表中数据量太大,因此
在表的设计时常将表进行水平或者垂直分割,但
表的结构的变化对应用程序产生不良的影响。
? ⑦视图提供了一个简单而有效的安全机制。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.3.1 创建视图
? 创建视图时应该注意以下情况,
? ① 只能在当前数据库中创建视图 。
? ② 如果视图引用的基表或者视图被删除, 则该视图不能再被
使用, 直到创建新的基表或者视图 。
? ③ 如果视图中某一列是函数, 数学表达式, 常量或者来自多
个表的列名相同, 则必须为列定义名称 。
? ④ 不能在视图上创建索引, 不能在规则, 缺省, 触发器的定
义中引用视图 。
? ⑤ 当通过视图查询数据时, SQL Server要检查以确保语句中
涉及的所有数据库对象存在, 而且数据修改语句不能违反数
据完整性规则 。
? ⑥ 视图的名称必须遵循标识符的规则, 且对每个用户必须是
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,利用企业管理器创建视图
? 图 5-26,图 5-27(a), 5-27(b),图 5-28,图 5-
29,图 5-30,是利用企业管理器创建视图的具体
操作步骤,用户可根据图中提示创建视图。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-26 选择新建视图选项对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-27 (a) 新建视图对话框 图 5-27(b) 添加表菜单
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-28 添加表对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-29 选择视图字段对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-30 视图属性对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,利用 Transact-SQL语句中的 CREATE VIEW命
令创建视图
?使用 Transact-SQL语句中的 CREATE VIEW创建视图的语法
形式如下,
?CREATE VIEW [ < database_name >,] [ < owner
>,] view_name [ ( column [,...n ] ) ]
[ WITH < view_attribute > [,...n ] ]
AS
select_statement
[ WITH CHECK OPTION ]
< view_attribute >,:=
{ ENCRYPTION | SCHEMABINDING |
VIEW_METADATA }
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
使用 Transact-SQL语句中的 CREATE VIEW创建视图
的参数说明如下,
view_name用于指定视图的名称, column用于指
定视图中的字段名称 。
WITH ENCRYPTION表示 SQL Server 加密包含
CREATE VIEW 语句文本在内的系统表列 。
select_statement用于创建视图的 SELECT语句,
利用 SELECT命令可以从表中或者视图中选择列
构成新视图的列 。
WITH CHECK OPTION用于强制视图上执行的
所有数据修改语句都必须符合由 select_statement
设置的准则 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
SCHEMABINDING表示在 select_statement语句
中如果包含表, 视图或者引用用户自定义函数,
则表名, 视图名或者函数名前必须有所有者前缀 。
VIEW_ METADATA表示如果某一查询中引用该
视图且要求返回浏览模式的元数据时, 那么 SQL
Server将向 DBLIB和 OLE DB APIS返回视图的元
数据信息 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 5-12,
? 选择表 student和 teacher中的部分字段和记录创建视图,
并且限制表 student中的记录只能是名称为“张三”的记录集
合,视图定义为 view_part,其程序清单如下,
? create view view_part
? as
? Select student.name,
? student.age,student.sex,
? teacher.name,age,salary
? from
? student,teacher
? where student.name=’张三 ’
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3,利用向导创建视图
? 图 5-31 --图 5-38 是利用向导创建视图 的具体步骤。
图 5-31 选择工具菜单中的向导命令
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-32 欢迎使用创建视图向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-33 选择数据库对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-34 选择对象对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-35 选择字段对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-36 定义限制对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-37 命名视图对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-38 完成创建视图向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.3.2 修改和重命名视图
? 1,修改视图
? ( 1)利用企业管理器 修改视图。
? ( 2)使用 ALTER VIEW语句修改视图 。
? ALTER VIEW view_name
? [(column[,...n])]
[WITHENCRYPTION]
AS
select_statement
[ WITH CHECK OPTION ]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,重命名视图
?( 1)利用企业管理器重命名视图 。
?( 2)可以使用系统存储过程 sp_rename修改视图的
名称,该过程的语法形式如下,
?sp_rename old_name,new_name
?例子 5-14:把视图 v_all重命名为 v_part,其程序清
单如下,
?sp_rename v_all,v_part
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.3.3 查看视图信息、删除视图
? 1,查看视图信息
? 每当创建了一个新的视图后, 则在系统说明的系
统表中就定义了该视图的存储, 因此, 可以使用系统
存储过程 sp_help显示视图特征, 使用 sp_helptext显
示视图在系统表中的定义, 使用 sp_depends显示该视
图所依赖的对象 。 它们的语法形式分别如下,
? ( 1) sp_help 数据库对象名称
? ( 2) sp_helptext 视图(触发器、存储过程)
? ( 3) sp_depends 数据库对象名称
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
使用 SQL Server 查询分析器和企业管理器来显示
视图
? 使用 SQL Server 查询分析器 ( Query Analyzer)
可以方便地显示视图信息, 如图 5-42所示, 该对话框
显示了使用 sp_helptext存储过程显示视图 v_employee
的特征 。
? 另外,也可以使用企业管理器来显示视图的定
义,如图 5-43所示。
? 利用企业管理器也可以查看视图的输出数据,如
图 5-44所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-42 显示视图信息对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-43 视图属性对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-44 视图输出数据窗口
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,删除视图
? ( 1) 使用企业管理器删除视图的操作方法为如
图 5-45和图 5-46所示 。
? ( 2) 使用 Transact-SQL语句 DROP VIEW删除
视图的语法形式如下,
? DROP VIEW {view_name} [,… n]
? 可以使用该命令同时删除多个视图, 只需在要删
除的视图名称之间用逗号隔开即可 。
? 例子 5-15:同时删除视图 v_student和 v_teacher,
其程序清单如下,
? drop view v_student,v_teacher
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-45 除去对象对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-46 显示相关性对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.3.4 通过视图修改记录
? 使用视图修改数据时,需要注意以下几点,
修改视图中的数据时, 不能同时修改两个或者多个基
表, 可以对基于两个或多个基表或者视图的视图进行
修改, 但是每次修改都只能影响一个基表 。
不能修改那些通过计算得到的字段 。
如果在创建视图时指定了 WITH CHECK OPTION选
项, 那么所有使用视图修改数据库信息时, 必须保证
修改后的数据满足视图定义的范围 。
执行 UPDATE,DELETE命令时, 所删除与更新的数
据必须包含在视图的结果集中 。
如果视图引用多个表时, 无法用 DELETE命令删除数
据 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,插入数据记录
?例子 5-16:首先创建了一个新的视图 v_employees,该视图基于
表 employees创建 。
?create view v_employees(number,name,age,
sex,salary)
?as
?select number,name,age,sex,salary
?from employees
?where name=’张三 ’
?然后, 通过执行以下语句使用该视图向表 employees中添加一
条新的数据记录 。
?Insert into v_employees
?Values(001,’李力 ’,22,’m’,2000)
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,更新数据记录
? 使用视图可以更新数据记录, 但应该注意的是, 更新的只
是数据库中的基表 。
? 例子 5-19, 创 建 了 一 个 基 于 表 employees 的 视 图
v_employees,然后通过该视图修改表 employees中的记录 。 其
程序清单如下,
? create view v_employees
? as
? select * from employees
? update v_employees
? set name=’张然 ’
? where name=’张三 ’
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3,删除数据记录
? 使用视图删除记录, 可以删除任何基表中的记录,
直接利用 DELETE语句删除记录即可 。 但应该注意,
必须指定在视图中定义过的字段来删除记录 。
? 例子 5-20, 利 用 视 图 v_employees 删 除 表
employees中姓名为张然的记录 。 其程序清单为,
? delete from v_employees
? where name=’张然 ’
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.4 索引操作
5.4.1 创建索引
5.4.2 查看, 修改和删除索引
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
一、什么叫索引
? 数据库中的索引与书籍中的索引类似,在一本书中,
利用索引可以快速查找所需信息,无须阅读整本书。
在数据库中,索引使数据库程序无须对整个表进行
扫描,就可以在其中找到所需数据。书中的索引是
一个词语列表,其中注明了包含各个词的页码。而
数据库中的索引是某个表中一列或者若干列值的集
合和相应的指向表中物理标识这些值的数据页的逻
辑指针清单。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
二、索引的作用
通过创建唯一索引, 可以保证数据记录的唯一性 。
可以大大加快数据检索速度 。
可以加速表与表之间的连接, 这一点在实现数据
的参照完整性方面有特别的意义 。
在使用 ORDER BY和 GROUP BY子句中进行检索
数据时, 可以显著减少查询中分组和排序的时间 。
使用索引可以在检索数据的过程中使用优化隐藏
器, 提高系统性能 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
聚集索引与非聚集索引
? 聚集索引对表的物理数据页中的数据按列进行排
序,然后再重新存储到磁盘上,即聚集索引与数
据是混为一体的,它的叶节点中存储的是实际的
数据。
? 非聚集索引具有完全独立于数据行的结构,使用
非聚集索引不用将物理数据页中的数据按列排序。
非聚集索引的叶节点存储了组成非聚集索引的关
键字值和行定位器。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.4.1 创建索引
? SQL Server 2000创建索引的方法
? ( 1)利用企业管理器中的索引向导创建索引。
? ( 2)利用企业管理器直接创建索引。
? ( 3)利用 Transact-SQL语句中的 CREATE
INDEX命令创建索引。
? ( 4)利用企业管理器中的索引优化向导创建
索引。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,利用索引向导创建索引
? 如图 5-47 --图 5-52 所示。
图 5-47 欢迎使用创建索引向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-48 选择数据库和对象对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-49 显示当前索引信息对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-50 选择创建索引的列对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-51 指定索引选项对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-52 指定索引名称对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,利用企业管理器直接创建索引
? 其具体步骤如下,
? (1)在企业管理器中,展开指定的服务器和数
据库,选择要创建索引的表,用右键单击该表,
从弹出的快捷菜单中选择所有任务项的管理索引
选项(如图 5-53所示),就会出现管理索引对话
框,如图 5-54所示。在该对话框中,可以选择要
处理的数据库和表 。
? (2)单击“新建”按钮,则出现新建索引对话
框,如图 5-55所示。
? (3)选择完成后单击“确定”按钮,即可生成
新的索引;单击“取消”按钮,则取消新建索引
的操作。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-53 选择管理索引选项对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-54 管理索引对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-55 新建索引对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3,利用 Transact-SQL语句中的 CREATE INDEX命令创
建索引
?其语法形式如下,
?CREATE [UNIQUE] [CLUSTERED| NONCLUSTERED ]
?INDEX index_name ON { table | view }
( column [ ASC | DESC ] [,...n ] )
?[with
?[PAD_INDEX]
[[,]FILLFACTOR=fillfactor][[,]IGNORE_DUP_KEY]
[[,]DROP_EXISTING]
[[,]STATISTICS_NORECOMPUTE]
?[[,]SORT_IN_TEMPDB]
]
?[ ON filegroup ]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
CREATE INDEX命令创建索引各参数说明如下,
UNIQUE:用于指定为表或视图创建唯一索引,即不允许存
在索引值相同的两行。
CLUSTERED:用于指定创建的索引为聚集索引。
NONCLUSTERED:用于指定创建的索引为非聚集索引。
index_name,用于指定所创建的索引的名称。
table,用于指定创建索引的表的名称。
view,用于指定创建索引的视图的名称。
ASC|DESC:用于指定具体某个索引列的升序或降序排序方向。
Column,用于指定被索引的列。
PAD_INDEX:用于指定索引中间级中每个页(节点)上保持
开放的空间。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
FILLFACTOR = fillfactor:用于指定在创建索引时,每个索
引页的数据占索引页大小的百分比,fillfactor的值为 1到 100。
IGNORE_DUP_KEY:用于控制当往包含于一个唯一聚集索
引中的列中插入重复数据时 SQL Server所作的反应。
DROP_EXISTING:用于指定应删除并重新创建已命名的先
前存在的聚集索引或者非聚集索引。
STATISTICS_NORECOMPUTE:用于指定过期的索引统计
不会自动重新计算。
SORT_IN_TEMPDB:用于指定创建索引时的中间排序结果
将存储在 tempdb 数据库中。
ON filegroup:用于指定存放索引的文件组。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 5-21,
?例子 5-21:为表 employees创建了一个唯一聚集索引, 其程序
清单如下,
?CREATE UNIQUE CLUSTERED INDEX number_ind
? ON employees (number)
?with
? pad_index,
? fillfactor=20,
? ignore_dup_key,
? drop_existing,
? statistics_norecompute
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 5-22,
?为表 employees创建了一个复合索引, 其程序清单如
下,
?create index employees_cpl_ind
?on employees(name,age)
?with
? pad_index,
? fillfactor=50
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4,利用索引优化向导创建索引
? 索引优化向导可以完成以下几方面的工作,
? ( 1) 根据给定的工作负荷, 通过使用查询优化器
分析该工作负荷中的查询, 为数据库推荐最佳索引组合 。
? ( 2) 分析所建议的更改将会产生的影响, 包括索引
的使用, 查询在表之间的分布, 以及查询在工作负荷中
的性能 。
? ( 3) 推荐为执行一个小型的问题查询集而对数据库
进行优化的方法 。
? ( 4) 通过设定高级选项如磁盘空间约束, 最大查询
语句数和每个索引最多对应字段数等, 允许定制推荐方
式 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
利用索引优化向导创建和优化索引的具体步骤如下,
? 如图 5-56 --图 5-65 所示。
图 5-56 欢迎使用索引优化向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-57 选择服务器和数据库对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-58 连接服务器对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-59 选择服务器对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-61 修改缺省优化参数对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-62 选择要优化的表对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-63 索引建议对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-64 索引分析对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-65 完成索引优化向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.4.2 查看、修改和删除索引
?
1,利用企业管理器查看, 修改和删除索引
? 要查看和修改索引的详细信息, 可以在企业管理器中, 展
开指定的服务器和数据库项, 用右键单击要查看的表, 从
弹出的快捷菜单中选择所有任务子菜单中的, 管理索引,
选项, 则会出现管理索引对话框 。 选择要查看或者修改的
索引, 单击, 编辑, 按钮, 就会出现修改索引对话框 。 在
该对话框中, 可以修改索引的大部分设置, 还可以直接修
改其 SQL脚本, 只需按下, 编辑 SQL…,按钮, 即可出现编
辑 SQL脚本对话框, 其中可以编辑, 测试和运行索引的
SQL脚本 。
? 要删除索引, 可以在企业管理器中, 从管理索引对话框中
或者表的属性对话框中, 选择要删除的索引, 单击, 删除,
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,用系统存储过程查看和更改索引名称
? 系统存储过程 sp_helpindex可以返回表的所有索
引信息, 其语法形式如下,
? sp_helpindex [@objname=]’name’
? 其中 [@objname=]’name’参数用于指定当前数据
库中的表的名称。
? 另外, 系统存储过程 sp_rename可以用来更改索
引的名称, 其语法形式如下,
? sp_rename[@objname=]'object_name',
[@newname=]'new_name'
[,[ @objtype = ] 'object_type' ]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 5-23,
?更改 employees表中的索引 employees_name_index名
称为 employees_name_ind,其程序清单如下,
?Exec sp_rename
‘employees.[employees_name_index]’,
‘employees_name_ind’,‘index’
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3,使用 Transact-SQL语句中的 DROP INDEX命令删除
索引
? 当不再需要某个索引时, 可以将其删除, DROP
INDEX命令可以删除一个或者多个当前数据库中
的索引, 其语法形式如下,
? DROP INDEX 'table.index | view.index' [,...n ]
? 其中, table | view用于指定索引列所在的表或索引
视图; index用于指定要删除的索引名称 。 注意,
DROP INDEX命令不能删除由 CREATE TABLE
或者 ALTER TABLE命令创建的主键或者唯一性
约束索引, 也不能删除系统表中的索引 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.5 存储过程
? 5.5.1 创建存储过程
? 5.5.2 执行存储过程
? 5.5.3 查看和修改存储过程
? 5.5.4 重命名和删除存储过程
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
存储过程的概念
? SQL Server提供了一种方法,它可以将一些固定
的操作集中起来由 SQL Server数据库服务器来完
成,以实现某个任务,这种方法就是存储过程。
? 在 SQL Server中存储过程分为两类:即系统提供
的存储过程和用户自定义的存储过程。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.5.1 创建存储过程
? 在 SQL Server中,可以使用三种方法创建存储过
程,
? ①使用创建存储过程向导创建存储过程。
? ②利用 SQL Server 企业管理器创建存储过程。
? ③使用 Transact-SQL语句中的 CREATE
PROCEDURE命令创建存储过程。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
创建存储过程时,需要确定存储过程的三个组
成部分,
? ① 所有的输入参数以及传给调用者的输出参数 。
? ② 被执行的针对数据库的操作语句, 包括调用
其它存储过程的语句 。
? ③ 返回给调用者的状态值, 以指明调用是成功
还是失败 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,使用创建存储过程向导创建存储过程
? 在企业管理器中,
选择工具菜单中的向
导选项, 选择, 创建
存储过程向导, ( 如
图 3-1所示 ), 则出
现欢迎使用创建存储
过程向导对话框, 如
图 5-71所示 。 根据图
5-71-- 图 5-76提示 可
完成创建存储过程 。 图 3-1 新建 SQL Server组
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-71 欢迎使用创建存储过程向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-72 选择数据库对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-73 选择数据库对象对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-74 完成创建存储过程向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-75 编辑存储过程属性对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-76 编辑存储过程 SQL对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,使用 SQL Server 企业管理器创建存储过程
? ( 1 ) 在 SQL Server企业管理器中, 选择指定的
服务器和数据库, 用右键单击要创建存储过程的数
据库, 在弹出的快捷菜单中选择, 新建, 选项, 再
选择下一级菜单中的, 存储过程 …,选项, 如图 5-77
所示;或者用右键单击存储过程图标, 从弹出的快
捷菜单中选择, 新建存储过程 …,选项, 如图 5-78所
示 。 均会出现创建存储过程对话框, 如图 5-79所示 。
? (2)在文本框中可以输入创建存储过程的
T_SQL语句,单击“检查语法”,则可以检查语法
是否正确;单击“确定”按钮,即可保存该存储过
程。如果要设置权限,单击“权限 …” 按钮,如图 5-
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-77 选择新建存储过程对话框( 1)
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-78 选择新建存储过程对话框( 2)
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-79 新建存储过程对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-80 设置权限对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3,使用 Transact-SQL语句中的 CREATE PROCEDURE
命令创建存储过程
? 创建存储过程前, 应该考虑下列几个事项,
?
? ① 不能将 CREATE PROCEDURE 语句与其它
SQL 语句组合到单个批处理中 。
? ② 创建存储过程的权限默认属于数据库所有者, 该
所有者可将此权限授予其他用户 。
? ③ 存储过程是数据库对象, 其名称必须遵守标识符
规则 。
? ④ 只能在当前数据库中创建存储过程 。
? ⑤ 一个存储过程的最大尺寸为 128M。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
使用 CREATE PROCEDURE创建存储过程的语法形
式如下,
?CREATEPROC[EDURE]procedure_name[;numb
er]
[{@parameterdata_type}
[VARYING][=default][OUTPUT]
][,...n]
WITH
{RECOMPILE|ENCRYPTION|RECOMPILE,ENCR
YPTION}]
[FORREPLICATION]
AS sql_statement [,..n ]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
用 CREATE PROCEDURE创建存储过程的语法 参数
的意义如下,
procedure_name:用于指定要创建的存储过程的名称。
number:该参数是可选的整数,它用来对同名的存储过程
分组,以便用一条 DROP PROCEDURE 语句即可将同组
的过程一起除去。
@parameter:过程中的参数。在 CREATE PROCEDURE
语句中可以声明一个或多个参数。
data_type:用于指定参数的数据类型。
VARYING:用于指定作为输出 OUTPUT参数支持的结果
集。
Default:用于指定参数的默认值。
OUTPUT:表明该参数是一个返回参数。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
RECOMPILE:表明 SQL Server 不会保存该存储
过程的执行计划 。
ENCRYPTION,表示 SQL Server 加密了
syscomments 表,该表的 text字段是包含 CREATE
PROCEDURE 语句的存储过程文本。
FOR REPLICATION:用于指定不能在订阅服务
器上执行为复制创建的存储过程。
AS:用于指定该存储过程要执行的操作。
sql_statement:是存储过程中要包含的任意数目和
类型的 Transact-SQL 语句。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.5.2 执行存储过程
?直接执行存储过程可以使用 EXECUTE命令来执行,
其语法形式如下,
?[[EXEC[UTE]]
{
[@return_status=]
{procedure_name[;number]|@procedu
re_name_var}
[[@parameter=]{value|@variable[OUTPU
T]|[DEFAULT]}
[,...n]
[ WITH RECOMPILE ]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 5-27,
?使用 EXECUTE 命令传递单个参数, 它执行 showind 存储过
程, 以 titles 为参数值 。 showind 存储过程需要参数
(@tabname),它是一个表的名称 。 其程序清单如下,
?EXEC showind titles
?当然, 在执行过程中变量可以显式命名,
?EXEC showind @tabname = titles
?如果这是 isql 脚本或批处理中第一个语句, 则 EXEC 语句可
以省略,
?showind titles或者 showind @tabname = titles
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.5.3 查看和修改存储过程
? 查看存储过程
? 存储过程被创建之后, 它的名字就存储在系统表
sysobjects中, 它的源代码存放在系统表 syscomments
中 。 可以使用使用企业管理器或系统存储过程来查
看用户创建的存储过程 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
( 1)使用企业管理器查看用户创建的存储过程
? 在企业管理器中,打开指定的服务器和数据库
项,选择要创建存储过程的数据库,单击存储过程
文件夹,此时在右边的页框中显示该数据库的所有
存储过程。用右键单击要查看的存储过程,从弹出
的快捷菜单中选择属性选项,此时便可以看到存储
过程的源代码。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
( 2)使用系统存储过程来查看用户创建的存储过程
?可供使用的系统存储过程及其语法形式如下,
?sp_help:用于显示存储过程的参数及其数据类型
?sp_help [[@objname=] name]
?参数 name为要查看的存储过程的名称 。
?sp_helptext:用于显示存储过程的源代码
?sp_helptext [[@objname=] name]
?参数 name为要查看的存储过程的名称 。
?sp_depends:用于显示和存储过程相关的数据库对象
?sp_depends [@objname=]’object’
?参数 object为要查看依赖关系的存储过程的名称 。
?sp_stored_procedures:用于返回当前数据库中的存储过程
列表
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,修改存储过程
? 存储过程可以根据用户的要求或者基表定义的改变而改变 。
使用 ALTER PROCEDURE语句可以更改先前通过执行
CREATE PROCEDURE 语句创建的过程, 但不会更改权
限, 也不影响相关的存储过程或触发器 。 其语法形式如下,
? ALTERPROC[EDURE]procedure_name[;number]
[{@parameterdata_type}
[VARYING][=default][OUTPUT]][,...n]
[WITH
{RECOMPILE|ENCRYPTION|RECOMPILE,ENCRYPTIO
N}]
[FORREPLICATION]
AS
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 5-29,
? 创建了一个名为 Oakland_authors 的过程, 默认
情况下, 该过程包含所有来自加利福尼亚州奥克兰
市的作者 。 随后授予了权限 。 然后, 当该过程需更
改为能够检索所有来自加利福尼亚州的作者时, 用
ALTER PROCEDURE 重新定义了该存储过程 。 其
程序清单如下,
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.5.4 重命名和删除存储过程
? 1,重命名存储过程
? 修改存储过程的名称可以使用系统存储过程
sp_rename,其语法形式如下,
? sp_rename 原存储过程名称, 新存储过程名称
? 另外,通过企业管理器也可以修改存储过程的名
称。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,删除存储过程
? 删除存储过程可以使用 DROP命令, DROP命令可
以将一个或者多个存储过程或者存储过程组从当
前数据库中删除, 其语法形式如下,
? drop procedure {procedure} [,… n]
? 当然,利用企业管理器也可以很方便地删除存储
过程。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.6 触发器
? 5.6.1 创建触发器
? 5.6.2 查看、修改和删除触发器
? 5.6.3 触发器的应用
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
触发器
? 触发器是一种特殊类型的存储过程, 它不同于前
面介绍过的存储过程 。 触发器主要是通过事件进
行触发而被执行的, 而存储过程可以通过存储过
程名称而被直接调用 。 触发器是一个功能强大的
工具, 它使每个站点可以在有数据修改时自动强
制执行其业务规则 。 触发器可以用于 SQL Server
约束, 默认值和规则的完整性检查 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
触发器主要优点如下,
?触发器是自动的:当对表中的数据作了任何修改
(比如手工输入或者应用程序采取的操作)之后
立即被激活。
?触发器可以通过数据库中的相关表进行层叠更改。
?触发器可以强制限制,这些限制比用 CHECK 约
束所定义的更复杂。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.6.1 创建触发器
? 创建触发器应该考虑以下几个问题,
? ① CREATE TRIGGER 语句必须是批处理中的第一个语句。
? ②创建触发器的权限默认分配给表的所有者,且不能将该权
限转给其他用户。
? ③触发器为数据库对象,其名称必须遵循标识符的命名规则。
? ④虽然触发器可以引用当前数据库以外的对象,但只能在当
前数据库中创建触发器。
? ⑤虽然不能在临时表或系统表上创建触发器,但是触发器可
以引用临时表。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? ⑥ 在含有用 DELETE 或 UPDATE 操作定义的外键的表中,
不能定义 INSTEAD OF 和 INSTEAD OF UPDATE 触发器 。
? ⑦ 虽然 TRUNCATE TABLE 语句类似于没有 WHERE 子句
( 用于删除行 ) 的 DELETE 语句, 但它并不会引发
DELETE 触发器, 因为 TRUNCATE TABLE 语句没有记录 。
? ⑧ WRITETEXT 语句不会引发 INSERT 或 UPDATE 触发器 。
? ⑨ 当创建一个触发器时必须指定,⑴ 名称; ⑵ 在其上定义触
发器的表; ⑶ 触发器将何时激发; ⑷ 激活触发器的数据修改
语句 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,使用企业管理器创建触发器
? 在企业管理器中, 展开指定的服务器和数据库项,
然后展开要在其上创建触发器的表所在的数据库,
用右键单击该表, 从弹出的快捷菜单中选择所有
任务子菜单下的管理触发器选项, 则会出现触发
器属性对话框 。 在该对话框中, 在名称文本框中
选择新建, 然后在文本框中输入触发器文本 。 单
击, 检查语法, 按钮, 则可以检查语法是否正确 。
单击, 应用, 按钮, 则在名称下拉列表中会有新
创建的触发器名称 。 最后, 单击, 确定, 按钮,
即可关闭该对话框, 成功创建触发器 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,使用 CREATE TRIGGER命令创建触发器
?其语法形式如下,
?CREATE TRIGGER trigger_name
ON{table|view}
[WITHENCRYPTION]
{
{ { FOR | AFTER | INSTEAD OF }
{ [DELETE][,][ INSERT ] [,] [ UPDATE ] }
[WITHAPPEND]
[NOTFORREPLICATION]
AS
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
?[{IFUPDATE(column)
[{AND|OR}UPDATE(column)]
[...n]
|IF(COLUMNS_UPDATED(){bitwise_opera
tor}updated_bitmask)
{comparison_operator}column_bitm
ask[...n]
}]
sql_statement[...n]
}
}
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
例子 5-30,
? 创建了一个触发器, 在 titles 表上创建一个插入, 更新类
型的触发器, 其程序清单如下,
? USE pubs
? IF EXISTS (SELECT name FROM sysobjects
? WHERE name = 'reminder' AND type =
'TR')
? DROP TRIGGER reminder
? GO
? CREATE TRIGGER reminder
? ON titles
? FOR INSERT,UPDATE
? AS sql_statements
? GO
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.6.2 查看、修改和删除触发器
? 1,查看触发器
? ( 1 ) 使用企业管理器查看触发器信息
? ( 2 ) 使用系统存储过程查看触发器
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
sp_help,sp_helptext和 sp_depends具体用途和语法形
式如下。
? sp_help:用于查看触发器的一般信息, 如触发器的
名称, 属性, 类型和创建时间 。
?sp_help ‘触发器名称 ’
? sp_helptext:用于查看触发器的正文信息
?sp_helptext ‘触发器名称 ’
? sp_depends:用于查看指定触发器所引用的表或者
指定的表涉及到的所有触发器 。
?sp_depends ’触发器名称 ’
?sp_depends ‘表名 ’
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,修改触发器
? ( 1 ) 使用企业管理器修改触发器正文
? 在企业管理器中,展开指定的服务器和数据库,
选择指定的数据库和表,用右键单击要修改的表,
从弹出的快捷菜单中选择所有任务子菜单下的管理
触发器选项,则会出现触发器属性对话框。在名称
选项框中选择要修改的触发器的名称,然后在文本
框中修改触发器的 SQL语句,单击“检查语法”按
钮,可以检查语法是否正确。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
(2)使用 sp_rename命令修改触发器的名称
? sp_rename命令的语法形式如下,
? sp_rename oldname,newname
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
(3)使用 alter trigger命令修改触发器正文
? alter trigger命令的语法形式如下,
? ALTERTRIGGERtrigger_name
ON(table|view)
[WITHENCRYPTION]
{
{ ( FOR | AFTER | INSTEAD OF ) { [ DELETE ]
[,] [ INSERT ] [,] [ UPDATE ] }
[NOTFORREPLICATION]
AS
sql_statement[...n]}
|
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? {(FOR|AFTER|INSTEADOF){[INSERT][,]UPDATE}}
[NOTFORREPLICATION]
AS
{IFUPDATE(column)
[{AND|OR}UPDATE(column)]
[...n]
| IF ( COLUMNS_UPDATED ( )
{ bitwise_operator } updated_bitmask )
{comparison_operator}column_bitmask[...n]
}
sql_statement[...n]
}
}
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3,删除触发器
? ( 1 ) 使用系统命令 DROP TRIGGER删除指定
的触发器, 其语法形式如下,
? DROP TRIGGER { trigger } [,...n ]
? ( 2 ) 删除触发器所在的表时, SQL Server将会
自动删除与该表相关的触发器 。
? ( 3 ) 在企业管理器中, 用右键单击要删除的触
发器所在的表, 从弹出的快捷菜单中选择所有任务子
菜单下的管理触发器选项, 则会出现触发器属性对话
框 。 在名称选项框中选择要删除的触发器, 单击, 删
除, 按钮, 即可删除该触发器 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.6.3 触发器的应用
? 1,使用 INSERT触发器
? INSERT触发器通常被用来更新时间标记字段,
或者验证被触发器监控的字段中的数据满足要求的
标准,以确保数据完整性。
? 例子 5-31,
? 2,使用 UPDATE触发器
? 修改触发器和插入触发器的工作过程基本上一致,
修改一条记录等于插入了一条新的记录并且删除一
条旧的记录。
? 例子 5-32和 5-33
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3,使用 DELETE触发器
? DELETE触发器通常用于两种情况, 第一种情况
是为了防止那些确实需要删除但会引起数据一致
性问题的记录的删除 。
? 第二种情况是执行可删除主记录的子记录的级联
删除操作 。 可以使用这样的触发器从主销售记录
中删除所有的定单项 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4,使用嵌套的触发器
? 如果一个触发器在执行操作时引发了另一个触发
器, 而这个触发器又接着引发下一个触发器 ……
这些触发器就是嵌套触发器 。 触发器可嵌套至 32
层, 并且可以控制是否可以通过 "嵌套触发器 "服
务器配置选项进行触发器嵌套 。 如果允许使用嵌
套触发器, 且链中的一个触发器开始一个无限循
环, 则超出嵌套级, 而且触发器将终止 。 在执行
过程中, 如果一个触发器修改某个表, 而这个表
已经有其它触发器, 这是就要使用嵌套触发器 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5.7 图 表
? 图表(又称关系图)是 SQL Server中一类特殊
的数据库对象,它提供给用户直观地管理数据库
表的方法。通过图表,用户可以直观地创建、编
辑数据库表之间的关系,也可以编辑表及其列的
属性。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
利用企业管理器创建图表的具体步骤如下,
? 图 5-85--图 5-87所示 。
图 5-85 欢迎使用创建数据库关系图向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-86 选择要添加的表对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 5-87 完成数据库关系图创建对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
6.1 SQL Server权限管理策略
6.2 用户权限管理
第 6章 SQL Server权限管理
上一章 返回目录
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
6.1 SQL Server权限管理策略
? 6.1.1 安全帐户认证
? 6.1.2 访问许可确认
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
6.1.1 安全帐户认证
? 安全帐户认证是用来确认登录 SQL Server的用户
的登录帐号和密码的正确性,由此来验证其是否
具有连接 SQL Server的权限。 SQL Server 2000提
供了两种确认用户的认证模式,
? (一) Windows NT认证模式。
? (二)混合认证模式。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
(一) Windows NT认证模式
? SQL Server数据库系统通常运行在 Windows NT服
务器平台上, 而 NT作为网络操作系统, 本身就具
备管理登录, 验证用户合法性的能力, 因此
Windows NT认证模式正是利用了这一用户安全性
和帐号管理的机制, 允许 SQL Server也可以使用
NT的用户名和口令 。 在这种模式下, 用户只需要
通过 Windows NT的认证, 就可以连接到 SQL
Server,而 SQL Server本身也就不需要管理一套
登录数据 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
(二)混合认证模式
? 混合认证模式允许用户使用 Windows NT安全性或
SQL Server安全性连接到 SQL Server,这就意味
着用户可以使用他的帐号登录到 Windows NT,或
者使用他的登录名登录到 SQL Server系统。 NT的
用户既可以使用 NT认证,也可以使用 SQL Server
认证。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
利用企业管理器进行认证模式的设置
? 其主要过程如下,
? 1,打开企业管理器, 用右键单击要设置认证模式
的 服 务 器, 从 快 捷 菜 单 中 选 择, 属性
( properties), 选项, 则出现 SQL Server属性对
话框 。
? 2,在 SQL Server属性对话框中选择安全性选项 。
? 3,在安全性选项栏中, 身份验证中可以选择要设
置的认证模式, 同时审核级别中还可以选择跟踪
记录用户登录时的哪种信息, 例如登录成功或登
录失败的信息等 。
? 4,在启动服务帐户中设置当启动并运行 SQL
Server时默认的登录者中哪一位用户 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
6.1.2 访问许可确认
? 但是通过认证阶段并不代表用户能够访问 SQL
Server中的数据, 同时他还必须通过许可确认 。 用
户只有在具有访问数据库的权限之后, 才能够对
服务器上的数据库进行权限许可下的各种操作,
这种用户访问数据库权限的设置是通过用户帐号
来实现的 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
6.2 用户权限管理
? 6.2.1 服务器登录帐号和用户帐号管理
? 6.2.2 许可(权限)管理
? 6.2.3 角色管理
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
6.2.1 服务器登录帐号和用户帐号管理
? 1,SQL Server服务器登录管理
? SQL Server有三个默认的用户登录帐号:即 sa、
administrators\builtin和 guest。
? 2,用户帐号管理
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.利用企业管理器创建、管理 SQL Server登录帐号
? 其具体执行步骤如下,
? (1)打开企业管理器,单击需要登录的服务器
左边的,+”号,然后展开安全性文件夹。
? ( 2 ) 用右键单击登录 ( login) 图标, 从快捷菜
单中选择新建登录 ( new login) 选项, 则出现
SQL Server登录属性 — 新建登录对话框, 如图 6-2
所示 。
? ( 3)在名称编辑框中输入登录名,在身份验证选
项栏中选择新建的用户帐号是 Windows NT认证模
式,还是 SQL Server认证模式。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? (4)选择服务器角色页框,如图 6-3所示。在服
务器角色列表框中,列出了系统的固定服务器角
色。
? (5)选择数据库访问页框,如图 6-4所示。上面
的列表框列出了该帐号可以访问的数据库,单击
数据库左边的复选框,表示该用户可以访问相应
的数据库以及该帐号在数据库中的用户名。
? (6)设置完成后,单击“确定”按钮即可完成
登录帐号的创建。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 6-2 新建登录帐号对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 6-3 服务器角色对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 6-4 数据库访问对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
使用 SQL Server的创建登录向导工具创建登录
帐号。
? 其具体操作过程如下,
? 图 6-5 --图 6-11
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 6-5 欢迎使用创建登录向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 6-6 选择身份验证模式对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 6-7 选择对用户帐号的安全性设置对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 6-8 输入登录信息对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 6-9 选择安全性角色对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 6-10 选择允许登录帐号访问的数据库对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 6-11 完成创建登录向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2.用户帐号管理
? 在数据库中,一个用户或工作组取得合法的登录
帐号,只表明该帐号通过了 Windows NT认证或者
SQL Server认证,但不能表明其可以对数据库数
据和数据库对象进行某种或者某些操作,只有当
他同时拥有了用户帐号后,才能够访问数据库。
? 利用企业管理器可以授予 SQL Server登录访问数
据库的许可权限。使用它可创建一个新数据库用
户帐号 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
6.2.2 许可(权限)管理
? 许可用来指定授权用户可以使用的数据库对象和
这些授权用户可以对这些数据库对象执行的操作。
用户在登录到 SQL Server之后,其用户帐号所归
属的 NT组或角色所被赋予的许可(权限)决定了
该用户能够对哪些数据库对象执行哪种操作以及
能够访问、修改哪些数据。在每个数据库中用户
的许可独立于用户帐号和用户在数据库中的角色,
每个数据库都有自己独立的许可系统,在 SQL
Server中包括三种类型的许可:即对象许可、语句
许可和预定义许可。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
三种许可类型
? 1、对象许可
? 表示对特定的数据库对象,即表、视图、字段和
存储过程的操作许可,它决定了能对表、视图等
数据库对象执行哪些操作。
? 2、语句许可
? 表示对数据库的操作许可,也就是说,创建数据
库或者创建数据库中的其它内容所需要的许可类
型称为语句许可。
? 3、预定义许可
? 是指系统安装以后有些用户和角色不必授权就有
的许可。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
可用于语句许可的 Transaction_SQL 语句
及其含义如下,
Create database:创建数据库
Create table:创建表
Create view:创建视图
Create rule:创建规则
Create default:创建缺省
Create procedure:创建存储过程
Create index:创建索引
Backup database:备份数据库
Backup log:备份事务日志
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
许可的管理
? 1,使用 SQL Server 企业管理器管理许可
? SQL Server 可通过两种途径:即面向单一用户
和面向数据库对象的许可设置,来实现对语句
许可和对象许可的管理,从而实现对用户许可
的设定。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? Transaction_SQL 语句使用 grant,revoke和 deny
三种命令来实现管理权限。
2,使用 Transaction_SQL 语句
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
Grant语句其语法形式如下,
?(1)对语句的许可
?Grant {all|statement[,…n]} to security_account[,…n]
?(2)对对象的许可
?grant
?{
? {all [priviledges]|permission[,…n]}
? [( column[,…n] ) ] on {table|view}
? |on {table|view} [( column[,…n] ) ]
? |on {stored_procedure|extended_procedure}
?}
?to security_account[,…n]
?[as {group|role}]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
Deny语句其语法形式如下,
?(1)否定语句的许可
?deny {all|statement[,… n]} to security_account
[,… n]
?(2)否定对象的许可
?deny
?{
? {all [priviledges]|permission[,… n]}
? [( column[,… n]) ] on {table|view}
? |on {table|view} [( column[,… n]) ]
? |on {stored_procedure|extended_procedure}
?}
?to security_account[,… n]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
Revoke语句其语法形式如下,
?(1)收回语句的许可
?revoke {all|statement[,… n]} from
security_account [,… n]
?(2)收回对象的许可
?revoke [grant option for]
?{
? {all [priviledges]|permission[,… n]}
? [( column[,… n]) ] on {table|view}
? |on {stored_procedure|extended_procedure}
?}
?from security_account[,… n]
?[as {group|role}]
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
6.2.3 角色管理
? 角色是 SQL Server 7.0版本引进的新概念,它代替
了以前版本中组的概念。利用角色,SQL Server
管理者可以将某些用户设置为某一角色,这样只
对角色进行权限设置便可以实现对所有用户权限
的设置,大大减少了管理员的工作量。 SQL
Server提供了用户通常管理工作的预定义服务器角
色和数据库角色。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1、服务器角色
? 服务器角色是指根据 SQL Server的管理任务,以
及这些任务相对的重要性等级来把具有 SQL
Server管理职能的用户划分为不同的用户组,每一
组所具有的管理 SQL Server的权限都是 SQL
Server内置的,即不能对其进行添加、修改和删除,
只能向其中加入用户或者其他角色。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
七种常用的固定服务器角色
系统管理员:拥有 SQL Server所有的权限许可 。
服务器管理员:管理 SQL Server服务器端的设置 。
磁盘管理员:管理磁盘文件 。
进程管理员:管理 SQL Server系统进程 。
安全管理员:管理和审核 SQL Server系统登录 。
安装管理员:增加, 删除连接服务器, 建立数据库复制以及
管理扩展存储过程 。
数据库创建者:创建数据库, 并对数据库进行修改 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2、数据库角色
? 数据库角色是为某一用户或某一组用户授予不同
级别的管理或访问数据库以及数据库对象的权限,
这些权限是数据库专有的,并且还可以使一个用
户具有属于同一数据库的多个角色。 SQL Server
提供了两种类型的数据库角色:即固定的数据库
角色和用户自定义的数据库角色。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
(1)固定的数据库角色
public:维护全部默认许可 。
db_owner:数据库的所有者, 可以对所拥有的数据库
执行任何操作 。
db_accessadmin:可以增加或者删除数据库用户, 工
作组和角色 。
db_addladmin:可以增加, 删除和修改数据库中的任
何对象 。
db_securityadmin:执行语句许可和对象许可 。
db_backupoperator:可以备份和恢复数据库 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
db_datareader:能且仅能对数据库中的任何表执
行 select操作, 从而读取所有表的信息 。
db_datawriter:能够增加, 修改和删除表中的数
据, 但不能进行 select操作 。
db_denydatareader:不能读取数据库中任何表中
的数据 。
db_denydatawriter:不能对数据库中的任何表执
行增加, 修改和删除数据操作 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
(2)用户自定义角色
? 创建用户定义的数据库角色就是创建一组用户,
这些用户具有相同的一组许可 。 如果一组用户需
要执行在 SQL Server中指定的一组操作并且不存
在对应的 Windows NT组, 或者没有管理 Windows
NT用户帐号的许可, 就可以在数据库中建立一个
用户自定义的数据库角色 。 用户自定义的数据库
角色有两种类型:即标准角色和应用程序角色 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? 标准角色通过对用户权限等级的认定而将用户划
分为不用的用户组, 使用户总是相对于一个或多
个角色, 从而实现管理的安全性 。
? 应用程序角色是一种比较特殊的角色 。 当我们打
算让某些用户只能通过特定的应用程序间接地存
取数据库中的数据而不是直接地存取数据库数据
时, 就应该考虑使用应用程序角色 。 当某一用户
使用了应用程序角色时, 他便放弃了已被赋予的
所有数据库专有权限, 他所拥有的只是应用程序
角色被设置的角色 。
标准角色和应用程序角色
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
管理角色的方式
? 1,使用企业管理器管理角色
? 2,使用存储过程管理角色
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,使用企业管理器管理角色
? ( 1 ) 管理服务器角色
? 打开企业管理器, 展开指定的服务器, 单击安全
性文件夹, 然后单击服务器角色图标, 选择需要
的选项, 根据提示操作 。
? ( 2 ) 管理数据库角色
? 在企业管理器中, 展开指定的服务器以及指定的
数据库, 然后用右键单击角色图标, 从快捷菜单
中选择新建数据库角色选项, 则出现数据库角色
属性 — 新建角色对话框, 根据提示即可新建角色 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,使用存储过程管理角色
? (1)管理服务器角色
? 在 SQL Server中,管理服务器角色的存储过程主
要有两个,
? sp_addsrvrolemember
? sp_dropsrvrolemember
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? 系统存储过程 sp_addsrvrolemember可以将某一登录帐
号加入到服务器角色中, 使其成为该服务器角色的成
员 。 其语法形式如下,
? sp_addsrvrolemember login,role
? 系统存储过程 sp_dropsrvrolemember可以将某一登录
者从某一服务器角色中删除, 当该成员从服务器角色
中被删除后, 便不再具有该服务器角色所设置的权限 。
其语法形式如下,
? sp_dropsrvrolemember [@loginame=]’login’,
[@rolename=]’role’
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
?sp_addrole:用来创建一个新的数据库角色
?sp_addrole role,owner
?sp_droprole:用于删除一个数据库角色
?sp_droprole role
?sp_helprole:显示当前数据库所有的数据库角色的所有信息
?sp_helprole [‘role’]
?sp_addrolemember:向数据库某一角色中添加数据库用户
sp_addrolemember role,security_account
?sp_droprolemember:用来删除某一角色的用户
?sp_droprolemember role,security_account
?sp_helprolemember:用于显示某一数据库角色的所有成员
?sp_helprolemember [‘role’]
(2)管理数据库角色
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
第 7章 SQL Server代理服务
7.1 SQL Server代理服务配置
7.2 定义操作员
7.3 作业管理
7.4 警报管理
上一章
返回目录
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
SQL Server 代理
? SQL Server 代理是一个任务规划器和警报
管理器, 在实际应用时, 可以将那些周期
性的工作定义成一个任务, 在 SQL Server
代理的帮助下自动执行;在自动执行时,
若出现故障, 则 SQL Server代理自动通知
操作员, 操作员获得通知后及时排除故障 。
如此在任务, 操作员, 警报三者之间既相
互独立, 又相互联系, 相互补充, 构成了
自动完成某些任务的有机整体 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
7.1 SQL Server代理服务配置
? SQL Server代理服务配置步骤,
? 1,打开企业管理器,展开指定的服务器
并打开管理文件夹,启动 SQL Server 代
理。用右键单击 SQL Server 代理图标,
从快捷菜单中选择 properties(属性)选
项,则出现 SQL Server 代理属性对话框,
选择常规页框,如图 7-1所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 7-1 SQL Server 代理属性 — 常规页框
1,选择常规页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,选择高级页框,如下图 7-2所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3,选择警报系统页框,如下图 7-3所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4,选择作业系统页框,如下图 7-4所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5,选择连接页框,如下图 7-5所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
7.2 定义操作员
? 使用 SQL Server 企业管理器可以创建一个操作员,
其具体步骤如下,
? 1,打开 SQL Server 企业管理器,展开指定的服务
器并打开管理文件夹,然后选中 SQL Server 代理
图标,如果 SQL Server 代理没有启动,则用右键
单击后选择启动选项启动。
? 2,选择通知页框,如图 7-7所示 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 7-7 新建操作员属性 — 通知页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
7.3 作业管理
? 一般来说, 如果要创建作业, 必须执行以
下三个步骤,
定义作业步 。
如果该作业不是用户指定执行, 创建作业
执行的调度时间 。
通知操作员作业的状态 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
7.3.1 作业步定义
? 一个作业可以含有一步或多步, 有不同定义作业
的方法,
使用 Transact-SQL语句
执行一个可执行程序
激活一个程序
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
7.3.2 创建作业
? 使用 SQL Server 企业管理器创建作业,
步骤如下,
? 1,打开企业管理器,展开指定的服务器并
打开管理文件夹,然后打开已经启动的
SQL Server代理,用右键单击作业图标,
从快捷菜单中选择新建作业选项,则出现
新建作业属性对话框,如图 7-8所示。
?
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 7-8 新建作业属性对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? 2,每个作业必须有一个或者多个步骤,所
以,除了定义作业属性外,在保存作业前,
还至少要定义一个作业步骤;要定义作业
步骤,选择新建作业属性对话框中的步骤
页框,然后在步骤页框中单击新建按钮,
则出现新建作业步骤对话框,如图 7-9所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 7-9 新建作业步骤 — 常规页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
? 3,选择新建作业步骤对话框中的高级页框,如图 7-
10所示。
图 7-10 新建作业步骤 — 高级页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
类型下拉框含有的选项及含义如下,
ActiveX脚本:运行一个脚本语言程序。
操作系统命令:执行,exe,.cmd,.bat文件。
复制分发服务器:定义复制分发命令。
复制合并:定义复制合并命令。
复制快照:定义复制快照命令。
Transact-SQL脚本( TSQL):执行 TSQL
语句命令。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
7.3.3 创建作业时间表
? 创建的作业可以按照需要指定执行,或者使用一
个或多个时间表执行。一个调度的作业在特定的
时间执行,或者在定期的时间执行。每个作业可
以有多个时间表。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
使用 SQL Server 企业管理器为现有的作业
创建时间表
? 打开管理文件夹,单击 SQL Server 代理并
单击作业;然后,用右键单击右边窗格中的
作业,从快捷菜单中选择 properties,则出
现作业属性对话框,如图 7-8所示。单击调
度标签,然后单击新建调度按钮,如图 7-11
所示。单击更改按钮,打开编辑反复出现的
作业调度对话框,如图 7-12所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 7-11 新建作业调度对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 7-12 编辑反复出现的作业调度
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
7.3.4 作业执行状态通知
利用 SQL Server 企业管理器为现有的作业设
置作业执行状态通知,用右键单击指定的作业,
从快捷菜单中选择 properties选项,出现作业属性
对话框,如图 7-8所示,然后选择通知页框,如图
7-13所示 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 7-13 新建作业属性 — 通知页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
7.4 警报管理
?1,创建事件警报
?( 1)展开启动的 SQL Server 代理,用右键单击警报
图标,从快捷菜单中选择新建警报选项,从中选择常
规页框,如图 7-14所示。
? ( 2)选中错误号单选按钮,然后单击右边的方框按
钮,则出现管理 SQL Server消息对话框,选择搜索页
框,如图 7-15所示。
?( 3)选择消息页框,然后单击新建按钮,出现新建
SQL Server消息对话框,如图 7-16所示。
?( 4)选择响应页框,如图 7-17所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 7-14 新建警报属性 — 常规页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 7-15 管理 SQL Server消息 — 搜索页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 7-16 新建 SQL Server消息对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,创建性能警报
? 性能警报是指当某一性能指数超过预定义的性能
时, 性能警报就会被触发, 通过在性能警报中定
义的电子邮件或者寻呼, 就可以把响应的警报信
息通知给管理员 。
? 性能警报的创建与事件警报的创建类似。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
第 8章 SQL Server数据复制
? 8.1 复制概述
? 8.2 配置服务器
? 8.3 创建发布出版物
? 8.4 订购出版物
? 8.5 管理复制选项
? 8.6 复制代理程序和监视器
上一章 返回目录
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
8.1 复制概述
? SQL Server提供了强大的内置复制能力,在复制
这一支持分布式数据处理能力的重要技术帮助下,
我们可以完成服务器之间的信息复制,这样就具
有多个域的信息源同步处理的功能。
? 复制最直接的定义就是将数据复制到另一地址,
然后将数据同步, 最终所有备份数据都有相同的
值 。
?
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
SQL Server的出版和订购模式
? 所谓出版就是向其它数据库服务器 ( 订购者 ) 复
制数据;订购就是接收出版者复制的数据 。 虽然
出版和订购的对象都是复制数据, 但出版和订购
却并不是从出版和订购两个不同角度对同一数据
进行复制, 而是表现出一定的层次性和顺序性,
即总是先进行出版, 再进行订购 。 SQL Server的
复制组件有出版者, 订购者, 分发者, 出版物和
论文, 推订购和拉订购等 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
SQL Server 2000支持三种复制类型
快照复制( Snapshot replication)
事务复制( Transaction replication)
合并复制( Merge replication)
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,快照复制
? 快照复制就是在某一时刻对出版数据进行一次
“照相”,生成一个描述出版数据库中数据瞬时状态的
静态文件,最后在规定时间将其复制到订阅者数据库。
?满足下述条件时适合采用快照复制,
数据主要是静态数据,不经常更改。
一个时期内允许有已过时的数据复本。
复制少量数据(在整个数据刷新为合理的情况下)。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,事务复制
? 与快照复制不同,事务日志复制的内容不是数
据而是多条 delete,update,insert语句或者存储过程。
? 满足下述情形时适合采用事务复制,
希望发生增量更改时将其传播到订阅服务器上 。
需要遵守 ACID 属性的事务 。
订阅服务器可靠和 /或频繁地连接到发布服务器上 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3,合并复制
? 合并复制作为一种从出版者向订购者分发数据的
方法允许出版者和订购者对出版数据进行修改,而不管订
购者与出版者是相互连接或断开,然后当所有或者部分节
点相连时便合并发生在各个节点的变化。
? 满足下述条件时适合使用合并复制,
多个订阅服务器需要在不同时刻更新数据并将这些更改传
播到发布服务器和其它订阅服务器 。
订阅服务器需要接收数据, 脱机更改数据, 然后将更改同
步到发布服务器和其它订阅服务器 。
当数据在多个站点更新时, 您不希望看到许多冲突, 但是,
如果确实发生了冲突, 则违反 ACID 属性是可以接受的 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
解决复制过程中的冲突的三个重要方面,
?l 系统为要复制的表的每条记录确定为标志字段 。
?l 增加几个系统表以支持数据跟踪, 提高同步效
率以及冲突的检测, 解决和报告 。
?l 在出版者和订购者的服务器上的表上创建触发
器, 以便跟踪数据的变化 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
8.2 配置服务器
? 配置复制是标识企业内的发布服务器、分发服务
器和订阅服务器的过程,使用 SQL Server 2000 工
具配置发布服务器、分发服务器和订阅服务器以
用于复制,并且将来在必要时修改或禁用复制。
? 用户可以使用配置发布和分发向导配置服务器,
其具体步骤如下 。
? 图 8-1 --图 8-6 所示,
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-1 选择配置发布和分发向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-2 欢迎使用配置发布和分发向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-3 选择分发服务器对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-4 配置 SQL Server代理选项
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-5 自定义配置对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-6 完成配置发布和分发向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
8.3 创建发布出版物
? 服务器配置后,就可以进行复制的创建了。在
SQL Server中,利用创建发布向导可以指定哪个
数据库为出版数据库,选择表或者存储过程来创
建论文从而创建复制出版物。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
利用 SQL Server 企业管理器创建复制的过程如下
? 打开 SQL Server企业管理器,选择发布服务器,
在主菜单中选择工具,在下拉菜单中选择复制,
则出现如图 8-1所示的对话框。在该对话框中双击
创建发布向导,就会出现创建和管理发布对话框,
如图 8-7所示。在数据库和发布框中选择准备发布
(出版)的数据库,然后单击创建发布按钮,则
出现欢迎使用创建发布向导对话框,如图 8-8所示。
选中显示本向导中的高级选项。一步一步地根据
提示选择需要的选项,即可完成操作,如下图 8-8
至 8-25所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-7 选择创建发布的数据库对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-8 欢迎使用创建发布向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-9 选择分发服务器对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-10 选择发布数据库对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-11 选择发布类型对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-12 可更新的订阅对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-13 选择订阅服务器类型对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-14 指定项目对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-15 选择项目缺省类型对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-16 设置表视图的缺省属性 — 常规页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-17 表视图属性 — 快照页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-18 选择发布名称和描述对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-19 自定义发布属性对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-20 筛选数据对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-21 筛选表的列对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-22 筛选表的行对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-23 a 指定筛选对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-23 b 允许匿名订阅对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-24 设置快照代理程序调度对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-25 创建发布完成对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
8.4 订购出版物
? 在创建完发布出版物之后,必须订购出版物才能
实现数据的复制。在 SQL Server 企业管理器中,
可以利用创建强制(请求)订阅向导来订购出版
物,其具体创建步骤如下。
? 如图 8-26至图 8-33 所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-26 创建和管理发布对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-27 欢迎使用强制订阅向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-28 选择订阅服务器对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-29 选择目的数据库对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-30 设置分发代理程序调度对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-31 初始化订阅对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-32 选择启动服务对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-33 完成强制订阅向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
8.5 管理复制选项
? 在创建服务器角色, 发布出版物和订阅出版物后,
可以利用 SQL Server 企业管理器进行复制选项的
配置和管理, 这些复制选项包括:分发选项, 发
布选项, 发布数据库选项, 订阅者选项和删除发
布选项 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1,配置分发选项
? ( 1 ) 打开企业管理器, 选中要进行配置的分发服务器,
在主菜单中选择工具, 在下拉菜单中选择复制, 然后选择
配置发布和分发向导选项, 或者展开要进行配置的分发服
务器, 用右键单击复制图标, 则出现发布服务器和分发服
务器的属性对话框, 选择分发服务器页框, 如图 8-34所示 。
? ( 2 ) 在图 8-34中选中有进行属性设置的分发数据库, 然
后单击属性按钮, 则出现分发数据库属性对话框, 如图 8-
35所示 。
? ( 3 ) 在图 8-34中的代理程序配置选项栏中, 单击代理程
序配置按钮, 则出现代理程序配置对话框, 如图 8-36所示 。
单击查看详细信息按钮可以查看或者修改复制代理程序各
参数的设置, 如图 8-37所示 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-34 发布服务器和分发服务器属性对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-35 设置分发数据库属性对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-36 代理程序配置对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-37 复制代理程序配置细节对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,配置发布选项
? 分发选项配置完成后,就可以进行发布选项的配
置。发布选项用来指定哪个发布者将使用已经创
建的分发者和分发数据库。 SQL Server允许多个
发布者使用同一个分发数据库。如果发布者是一
台远程服务器,那么它必须有访问分发数据库的
权限。配置发布选项的过程与分发选项的配置类
似。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
3,配置发布数据库
? 通过发布选项的配置, 为发布服务器指定分发数
据库后, 还需要对发布的数据库进行设置, 然后
才能在发布数据库上创建出版物 。 配置发布数据
库的过程如下 。
? 与前面一样,打开发布和分发服务器属性对话框
(图 8-34),选择发布数据库页框,如图 8-40所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-40 发布和分发服务器属性 — 发布数据库页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
4,配置订阅选项
? 订阅选项的配置如下,
? 在发布和分发数据库属性对话框中 ( 图 8-34), 选择订阅
服务器页框, 如图 8-41所示 。 在订阅服务器下的选项框中
单击新建按钮, 将出现启用新订阅服务器对话框, 如图 8-
42所示 。
? 单击图 8-41中选中的订阅服务器旁的方框按钮, 则出现订
阅服务器属性对话框, 如图 8-43所示 。
? 在图 8-43中选择调度页框, 如图 8-44所示 。 如果选择在下列
已调度时间运行复选框, 则单击更改按钮会出现编辑反复
出现的作业调度对话框, 如图 8-45所示 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-41 发布和分发服务器属性 — 订阅服务器对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-42 启用新订阅服务器对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-43 订阅服务器属性 — 常规页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-44 订阅服务器属性 — 调度页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-45 编辑反复出现的作业调度对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
5,删除发布配置信息
? SQL Server可以对发布选项进行配置, 也可以使这些发布
选项的配置无效 。 利用 SQL Server禁用发布和分发向导删
除发布配置信息的过程如下 。
? 在 SQL Server 企业管理器中,选择要删除发布的服务器,
在主菜单中选择工具菜单,在下拉菜单中选择复制选项,
然后选择禁用发布或分发向导选项,此时会出现禁用发布
和分发向导对话框,如图 8-46所示。单击“下一步”按钮,
则出现选择是否要禁用发布服务对话框,如图 8-47所示。
? 这里选择是选项后, 单击, 下一步, 按钮, 则出现选择要
删除的发布服务对话框, 如图 8-48所示 。 选择要删除的发
布任务后, 单击, 下一步, 按钮, 出现确认禁用发布对话
框, 如图 8-49所示 。 在确定要停止该任务后, 单击, 完成,
按钮, 即可完成删除发布任务的操作 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-46 欢迎使用禁用发布和分发向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-47 选择是否禁用发布对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-48 选择要删除的发布服务对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 8-49 确认禁用发布对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
8.6 复制代理程序和监视器
1,复制代理程序
SQL Server 2000复制使用代理程序执行与复制和
分发数据相关的任务 。
SQL Server 代理宿主并调度在复制中使用的代理
程序, 并提供了一种简单的方法来运行复制代理
程序 。
快照代理程序与所有的复制类型一起使用 。
日志阅读代理程序将与事务复制一起使用, 它将
标记为复制的事务从发布服务器的事务日志移动
到分发数据库中 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
分发代理程序将与快照复制和事务复制一起使用,
它将分发数据库上的快照作业和事务分发到订阅
服务器。
合并代理程序将与合并复制一起使用,它将初始
快照应用于订阅服务器,并移动和协调所发生的
增量数据更改。
队列阅读代理程序将与快照复制或事务复制一起
使用,或者如果使用排队更新立即更新作为一个
故障转移选项被启用的情况下与快照复制或事务
复制一起使用。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,复制监视器
? 通过 SQL Server 企业管理器中的复制监视器,可
以查看和管理负责多项复制任务的复制代理程序。
? 复制监视器提供了设置复制事件警报的一种方法 。
当事件发生时, 通过执行您定义的任务或向某人
发送电子邮件或传呼信息, 复制监视器可以自动
响应 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
利用 SQL Server企业管理器监视快照代理程序的
活动状况
? 其具体步骤如下,
? 打开 SQL Server 企业管理器,展开指定的服务器并打开复
制监视器文件夹,然后打开代理程序文件夹,选中快照代
理程序,此时在右边的页框中显示已经创建的快照代理。
用右键单击准备查看的代理程序,从快捷菜单中选择代理
程序历史记录选项,则出现快照代理程序历史记录对话框。
单击该对话框中的会话详情按钮,就会出现最新历史记录
对话框。从中可以了解到目前为止快照代理程序都执行了
哪些处理、运行的起始时间等信息。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
第 9章 SQL Server 数据转换
? 9.1 数据的导入和导出
? 9.2 使用 DTS设计器
返回目录
上一章
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
9.1 数据的导入和导出
? 9.1.1 数据的导入
? 9.1.2 数据的导出
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
9.1.1 数据的导入
?1,导入 FoxPro数据库
?利用 DTS导入、导出向导导入 FoxPro数据库的
步骤如下,
?(1)打开 Enterprise Manager(企业管理器),
展开选定的服务器,启动数据导入向导工具,就
会出现欢迎使用向导对话框,如图 9-1 。
?(2)单击“下一步”按钮,则出现选择数据
源对话框,如图 9-2所示。
?(3)单击“下一步”按钮,则出现选择导入
的目标数据库类型对话框,如图 9-10所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
?(4)单击“下一步”按钮,就会出现选择源
表和视图对话框,如图 9-12所示。
?(5)在图 9-12中单击“下一步”按钮,则会
出现保存、调度和复制包对话框,如图 9-15所示。
?(6)单击“下一步”按钮,则出现保存 DTS
包对话框,如图 9-16所示。
?(7)单击“下一步”按钮,则出现向导确认
完成对话框,如图 9-17所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-1 欢迎使用数据导入向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-2 选择数据源对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-3 设定 FoxPro数据库数据源对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-4 选择数据源类型对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-5 选择数据源驱动程序对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-6 确认创建数据源对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-7 设定文件数据库路径对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-8 输入数据库路径对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-9 确定源数据库信息对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-10 选择目标数据库对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-11 指定表复制或查询对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-12 选择源表和视图对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-13 列映射和转换对话框 — 列映射页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-14 列映射和转换对话框 — 转换页框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-15 保存、调度和复制包对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-16 保存 DTS包对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-17 确认导入数据对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,导入文本文件数据库
?( 1 ) 启动企业管理器, 展开选定的服务器,
用右键单击该服务器图标, 从快捷菜单中选择
所有任务 ( all tasks), 然后再从子菜单中选
择导入数据, 启动数据导入向导工具, 就会出
现欢迎使用向导对话框, 如图 9-1所示 。
?(2)单击“下一步”按钮,则出现选择数
据源对话框,如图 9-18所示。
?(3)在图 9-18中单击“下一步”按钮,则
出现选择文件格式对话框,如图 9-20所示。
?(4)单击“下一步”按钮,则出现指定列
分隔符对话框,如图 9-21所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
?(5)单击“下一步”按钮,就会出现选择目
的数据库类型对话框,如图 9-22所示。
?(6)单击“确定”按钮,则出现保存、调度
和复制包对话框,如图 9-25所示。
?(7)单击“下一步”按钮,则出现确认导入
数据对话框,如图 9-26所示。
?(8)如果在向导中设定了立即执行,在向导
结束后,则会出现数据导入对话框,如图 9-27所
示。该对话框中执行向导中定义的复制操作。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-18 选择数据源对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-19 选择文件对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-20 选择文件格式对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-21 指定列分隔符对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-22 选择目的数据库对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-23 选择源表和视图对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-24 选择列映射和转换对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-25 保存、调度和复制包对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-26 确认导入数据对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-27 进行数据导入对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
9.1.2 数据的导出
?1,导出数据库至 Access
?(1)打开企业管理器,展开指定的服务器,用右
键单击该服务器图标,从弹出的快捷菜单中选择所
有任务( all tasks)选项,然后再从子菜单中选择导
出数据选项,则会出现数据转换服务导入和导出向
导对话框,如图 9-28所示,它显示了该导出向导所
能完成的操作。
?(2)单击“下一步”按钮,就会出现选择导出数
据的数据源对话框,如图 9-29所示。
?(3)单击“下一步”按钮,则会出现选择目的对
话框,如图 9-30所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
?(4)选定目标数据库后,单击“下一步”按钮,
则出现指定表复制或查询对话框,如图 9-32所示。
?(5)单击“下一步”按钮,则出现选择源表和
视图对话框,如图 9-33所示。
?(6)单击“下一步”按钮,则会出现保存、调
度和复制包对话框,如图 9-36所示。
?(7)单击“下一步”按钮,就会出现导出向导
结束对话框,如图 9-37所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-28 数据转换服务导出向导对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-29 选择数据源对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-30 选择目的数据库对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-31 选择文件对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-32 指定表复制或查询对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-33 选择源表和视图对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-34 列映射和转换对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-35 查看数据对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-36 保存、调度和复制包对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-37 确认导出数据对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,导出数据库至文本文件
?(1)启动企业管理器,展开选定的服务器,用
右键单击该服务器图标,从弹出的快捷菜单中选择
所有任务选项,然后再从子菜单中选择导出数据选
项,就会出现欢迎使用数据转换服务导入和导出向
导对话框,如图 9-28所示。
?(2)单击“下一步”按钮,则会出现选择数据
源对话框,如图 9-38所示。
?(3)单击“下一步”按钮,就会出现选择目的
数据库类型对话框,如图 9-40所示。
?(4)单击“下一步”按钮,就会出现指定表复
制或查询对话框,如图 9-42所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
?(5)单击“下一步”按钮,则出现选择目的文
件格式对话框,如图 9-43所示。
?(6)单击“下一步”按钮,就会出现保存、调
度和复制包对话框,如图 9-45所示,其中可以设定
是否创建 DTS包,何时执行复制操作,以及将该包
以何种方式存放。
?(7)单击“下一步”按钮,则出现数据转换服
务的导出向导结束对话框,如图 9-46所示,其中显
示了在该向导中进行的设置。
?( 8 ) 如果在该向导中选择了立即执行, 在向导
结束后, 则会出现执行数据导出对话框, 如图 9-47
所示, 该对话框显示了复制的执行结果 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-38 选择数据源对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-39 设定高级连接属性对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-40 选择目的数据库对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-41 选择文件对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-42 指定表复制或查询对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-43 选择目的文件格式对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-44 列映射和转换对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-45 保存、调度和复制包对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-46 确认导出数据对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-47 执行数据导出对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
9.2 使用 DTS设计器
? DTS设计器和 DTS导入, 导出向导一样, 都是在同
构或者异构数据源之间进行数据导入, 导出和转
换 。 但是, DTS设计器是一个图形工具, 它使创
建和编辑 DTS包的工作变得更加简单和轻松, 而
且它提供了比 DTS向导更为强大的功能 。
? 利用 DTS设计器创建 DTS包,首先要添加连接,每
个包包含目标连接和源连接,在连接中指明 OLE
DB提供者数据源,接着定义源连接和目标连接间
的数据转换,然后要定义包将执行的任务,也可
以自定义任务,最后决定是否运行包或者将其存
储以备后用。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
1.添加连接
? (1)打开企业管理器后,登录到指定的服务器,用
右键单击 Data Transformation Services文件夹,从弹
出的快捷菜单中选择 New Package选项,就会出现
DTS Package对话框。如下图 9-48所示。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
?(2)在主菜单中
单击 Connection菜
单项,从下拉菜单
中选择 Microsoft
OLE DB Provider
for SQL Server选项,
则打开 Connection
Properties对话框,
如右图 9-49所示。 图 9-49 Connection Properties
对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
2,定义和设置数据转换任务
? 数据转换任务是将数据从源连接传递到目标连
接的主要机制。每个数据转换任务都要引用一
个 DTS Data Dump和 OLE DB服务提供者。源
连接和目标连接创建完成后,应创建数据转换。
其方法是选中源连接后,按住 <Shift>键不放,
再选择目标连接,两者都选中后右击目标连接,
从弹出的快捷菜单中选择 Transform Data Task,
则在 DTS设计器工作区会出现从源连接到目标
连接的箭头,其用于表明数据的流向。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
在完成数据转换属性设置之后,可以向 DTS包中添加
自定义任务,其操作步骤为,
? ( 1 ) 从左边的任务栏中, 将要添加的任务类型
用左键拖到 DTS设计器工作区, 然后用右键单击
进行属性设置, 其属性对话框如图 9-56所示 。
? ( 2 ) 添加完自定义任务之后, 则应在转换数据
任务和自定义任务之间定义优先级条件 。 如图 9-57
所示 。
? ( 3 ) 在创建完包之后, 可以单击工具栏上的 Run
按钮来运行包, 在包执行的过程中, 可以通过暂
停和停止按钮来对执行过程进行控制, 如图 9-58所
示 。
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-56 执行 SQL脚本任务属性设置对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-57 定义优先级条件对话框
上一页 下一页 返回本章首页
第 1章 SQL Server 关系数据库简介 SQL Server 2000数据库 简明教材
图 9-58 运行包对话框