SQL-Server-2000数据库及应用-全套电子课件完整版ppt整本书电子教案最全教学教程整套_第1页
SQL-Server-2000数据库及应用-全套电子课件完整版ppt整本书电子教案最全教学教程整套_第2页
SQL-Server-2000数据库及应用-全套电子课件完整版ppt整本书电子教案最全教学教程整套_第3页
SQL-Server-2000数据库及应用-全套电子课件完整版ppt整本书电子教案最全教学教程整套_第4页
SQL-Server-2000数据库及应用-全套电子课件完整版ppt整本书电子教案最全教学教程整套_第5页
已阅读5页,还剩720页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第1章 SQL Server 2000概述本章学习目标掌握数据库管理系统的基本知识;了解SQL Server 2000的发展过程;掌握SQL Server 2000的特点;掌握SQL Server 2000中文版的环境需求及安装方法;了解SQL Server 2000的配置方法;掌握卸载SQL Server 2000的方法。1.1 数据库管理系统概述数据管理技术大致经历了三个阶段:人工管理阶段(20世纪50年代中期以前)、文件系统阶段(20世纪50年代后期至60年代中期)和数据库系统阶段(从20世纪60年代末期开始)。1.1 数据库管理系统概述数据库系统(DataBase System,DBS

2、),是指在计算机系统中引入数据库后的系统。从广义上来说,数据库系统包括计算机硬件、操作系统、数据库管理系统、数据库、数据库管理员和用户等。1.1 数据库管理系统概述数据库(DataBase,DB)是可以长期存储在计算机中有组织、可共享的数据集合。数据库管理系统(DataBase Management System,DBMS)是安装在操作系统之上的数据管理软件。1.1 数据库管理系统概述常用的数据模型有三种,即层次模型、网状模型和关系模型。采用关系模型的数据库系统称为关系型数据库系统,简称RDBMS。当今市场上的绝大多数数据库管理系统采用的都是关系数据模型。1.2 SQL Server 2000

3、简介SQL Server 2000常见的版本有:企业版(Enterprise Edition)、标准版(Standard Edition)、个人版(Personal Edition)和开发人员版(Developer Edition)。1.3 SQL Server 2000特点真正的客户机/服务器体系结构。与Windows NT完全集成。具有很好的伸缩性。对Web技术的支持。SQL Server提供数据仓库功能。可在同一台计算机上安装多个SQL Server实例。1.4 SQL Server 2000的安装1.4.1 SQL Server 2000的环境需求1硬件需求安装SQL Server 2

4、000需要Pentium 166MHz或者更高类型的处理器,内存至少需要64MB,硬盘空间一般需要180MB。1.4.1 SQL Server 2000的环境需求2软件需求SQL Server 2000企业版:必须运行于安装Windows NT Server Enterprise Edition 4.0或者Windows 2000 Advanced Server以及更高版本的操作系统下。SQL Server 2000标准版:必须运行于安装Windows NT Server Enterprise Edition 4.0、Windows NT Server 4.0、Windows 2000 Ser

5、ver以及更高版本的操作系统下。1.4.1 SQL Server 2000的环境需求2软件需求SQL Server 2000个人版:可在多种操作系统下运行,如可运行于Windows 9x、Windows NT 4.0或Windows 2000的服务器版或工作站版的操作系统下。SQL Server 2000开发人员版:可运行于上述Windows 9x以外的所有操作系统下。1.4.2 SQL Server 2000的安装(1)将SQL Server 2000的安装盘放入光驱中,运行光盘中的AUTORUN.EXE程序。(2)选择“安装数据库服务器”选项。(3)根据系统的提示,进行服务器的安装。1.5

6、 SQL Server 2000的配置1.5.1 启动服务SQL Server 2000中可用的服务有SQL Server服务、SQL Server Agent服务(SQL Server代理服务)、Microsoft Search服务(全文搜索服务)和MSDTC(Microsoft Distributed Transaction Coordinator,微软分布式事务协调器)。1.5.1 启动服务SQL Server服务管理器的主要作用是用来启动数据库服务器的各种服务、暂停和停止正在运行的服务,或在暂停服务后继续服务。1.5.1 启动服务打开SQL Server服务管理器的方法是单击“开始”按

7、钮,并依次选择“程序”“Microsoft SQL Server”“服务管理器”选项。1.5.2 注册服务器SQL Server 2000企业管理器是一个公共服务器管理环境。可以使用它来配置系统环境、管理网络、计算机、服务以及建立和管理所有的SQL Server对象。1.5.2 注册服务器打开企业管理器的方法是单击“开始”按钮,并依次选择“程序”“Microsoft SQL Server”“企业管理器”选项,系统会打开SQL Server企业管理器窗口。1.5.2 注册服务器例1-1 安装一个新的实例EXAMPLE,并将它在新的SQL Server服务器组“实例组”中进行注册。1.5.3 删除

8、服务器的注册例1-2 删除对实例EXAMPLE的注册。1.6 卸载SQL Server 2000如果需要卸载已安装的SQL Server 2000应用程序,可以通过控制面板中的“添加或删除程序”卸载或使用SQL Server 2000自带的卸载程序来完成。1.6.1 通过控制面板卸载在Windows操作系统下,单击“开始”按钮,在弹出的开始菜单中依次选择“设置”“控制面板”“添加/删除程序”选项。1.6.2 使用SQL Server 2000自带的卸载程序(1)双击SQL Server 2000光盘中的AUTORUN.EXE,启动SQL Server 2000安装程序。(2)选择“SQL Se

9、rver 2000组件”,并选择“安装数据库服务器”,并单击“下一步”按钮。1.6.2 使用SQL Server 2000自带的卸载程序(3)在“计算机名”对话框中,选择“本地计算机”或“远程计算机”。(4)在“安装选择”对话框中,单击“对现有SQL Server实例进行升级、删除或添加组件”选项。1.7 本章小结数据管理技术经历了三个阶段:人工管理阶段、文件系统阶段和数据库系统阶段。数据库系统包括计算机硬件、操作系统、数据库管理系统、数据库、数据库管理员和用户等。数据库是可以长期存储在计算机中有组织、可共享的数据集合。1.7 本章小结数据库管理系统是安装在操作系统之上的数据管理软件。常用的数

10、据模型有三种:层次模型、网状模型和关系模型。关系模型是用二维表格结构来表示实体及实体间的联系。采用关系模型的数据库系统称为关系型数据库系统。1.7 本章小结SQL Server 2000是使用客户机/服务器体系结构的关系型数据库管理系统。SQL Server 2000常见的版本有企业版、标准版、个人版和开发人员版。SQL Server 2000中可用的服务有SQL Server服务、SQL Server Agent服务、Microsoft Search服务和MSDTC。用户对数据库执行任何操作之前首先必须启动SQL Server服务。1.7 本章小结SQL Server服务管理器的主要作用是用

11、来启动数据服务器的各种服务,暂停和停止正在运行的服务,或在暂停服务后继续服务。SQL Server 2000企业管理器是一个公共服务器管理环境,可以使用它来配置系统环境、管理网络、计算机、服务以及建立和管理所有的SQL Server对象。1.7 本章小结卸载已安装的SQL Server 2000应用程序,可以通过控制面板中的“添加或删除程序”卸载或使用SQL Server 2000自带的卸载程序来完成。1.8 思考与练习1数据管理技术经历了哪几个阶段?2数据模型有几种?最常用的是哪一种?3简述数据库系统的组成。1.8 思考与练习4SQL Server 2000的常见版本有哪些?各自的应用范围是

12、什么?5上机练习安装SQL Server 2000的默认实例和一个命名实例。6用两种方法分别卸载上面安装的SQL Server 2000的默认实例和命名实例。第2章 数据库的创建和管理北华航天工业学院李伟红本章学习目标掌握SQL Server 2000中文件的分类;掌握SQL Server 2000系统数据库的作用;掌握创建数据库的方法;掌握修改数据库的方法;掌握删除数据库的方法。2.1 数据库文件管理SQL Server 2000中的每一个数据库都是由多个文件组成的。根据文件的功能划分,可分为数据库文件和事务日志文件两大类。任何一个数据库至少应该包含一个数据库文件和一个事务日志文件。2.1.

13、1 数据库文件1主数据库文件当有多个数据库文件时,有一个文件被定义为主数据库文件,其扩展名为 .mdf。一个数据库只能有一个主数据库文件。2.1.1 数据库文件2辅助数据库文件用于存储主数据库文件中未存储的剩余数据和数据库对象,一个数据库可以没有辅助数据库文件,但也可以同时拥有多个辅助数据库文件。辅助数据库文件简称为辅助文件,它的扩展名为 .ndf。2.1.2 事务日志文件事务日志文件用来存储数据库的更新情况。当数据库损坏时,管理员可以使用事务日志恢复数据库。每一个数据库必须至少拥有一个事务日志文件,而且允许拥有多个日志文件。事务日志文件的扩展名为 .ldf。2.1.3 数据库文件组SQL S

14、erver 2000中的数据库文件组分为主文件组(Primary File Group)和用户定义文件组(User_defined Group)。2.1.3 数据库文件组主文件组:主文件组包含主要数据库文件和任何没有明确指派给其他文件组的其他数据库文件。数据库的系统表都包含在主文件组中。用户定义文件组:用户定义文件组是由用户根据需要定义的文件组。2.2 SQL Server 2000系统数据库SQL Server 2000安装成功后,系统会自动创建6个系统数据库,它们分别是Master、Model、Msdb、Tempdb、Pubs和Northwind。2.2 SQL Server 2000系统

15、数据库Master数据库:这是SQL Server系统最重要的数据库。它记录了SQL Server系统的所有系统信息。Model数据库:这是所有用户数据库和Tempdb数据库的模板数据库。2.2 SQL Server 2000系统数据库Msdb数据库:这是代理服务数据库。它为报警、任务调度和记录操作员的操作提供存储空间。Tempdb数据库:这是一个临时数据库。它为所有的临时表、临时存储过程及其他临时操作提供存储空间。2.2 SQL Server 2000系统数据库Pubs和Northwind数据库:它们是SQL Server自带的两个实例数据库,它们可以作为SQL Server的学习工具。2.

16、3 创建数据库创建数据库的过程实际上就是为数据库设计名称、设计所占用的存储空间和文件存放位置的过程。每一个数据库都应该具有惟一的名称,数据库的命名必须满足SQL Server 2000规定的命名规则。2.3 创建数据库在SQL Server 2000中,定义标识符需要满足如下规则。不能使用系统的保留字。标识符一般以英文字母开头(不区分大小写)。标识符最长为128个字符。2.3 创建数据库在SQL Server 2000中创建数据库的方法有以下三种:使用向导创建数据库、使用企业管理器创建数据库和使用Transact-SQL语言创建数据库。2.3.1 使用向导创建数据库(1)在企业管理器中,首先选

17、中欲创建数据库的服务器节点,然后从“工具”菜单中选择“向导”选项,或从工具栏中选择“向导”图标。(2)双击“创建数据库向导”命令,或者选中“创建数据库向导”命令后单击“确定”按钮。2.3.2 使用企业管理器创建数据库在企业管理器中,单击工具栏中的“数据库”图标,或在数据库文件夹或其下属任一数据库图标上右击,从弹出的快捷菜单中选择“新建数据库”命令。2.3.3 使用Transact-SQL语言创建数据库Transact-SQL语言主要由以下几部分组成:数据定义语言(DDL);数据操纵语言(DML);数据控制语言(DCL);系统存储过程(System Stored Procedure);一些附加的

18、语言元素。2.3.3 使用Transact-SQL语言创建数据库一般情况下,使用SQL Server 2000提供的实用工具“查询分析器”来输入并执行Transact-SQL语句。打开SQL Server查询分析器的方法是单击“开始”按钮,并依次选择“程序”Microsoft SQL Server“查询分析器”选项。2.3.3 使用Transact-SQL语言创建数据库CREATE DATABASE database_nameON PRIMARY ,n , ,n LOG ON ,n FOR LOAD|FOR ATTACH:=(NAME=logical_file_name,FILENAME=os

19、_file_name,SIZE=size,MAXSIZE=max_size|UNLIMITED,FILEGROWTH=growth_increment ) ,n:=FILEGROUP filegroup_name ,n2.3.3 使用Transact-SQL语言创建数据库说明:在Transact-SQL语言的命令格式中,用 括起来的内容表示是可选的;,n表示重复前面的内容;用括起来的内容表示在实际编写语句时,用相应的内容替代;用 括起来的内容表示是必选的;类似A|B的格式,表示A和B只能选择一个,不能同时都选。2.3.3 使用Transact-SQL语言创建数据库CREATE DATABASE

20、命令中的各参数说明如下。database_name:新数据库的名称。数据库名称在服务器中必须惟一,最长为128个字符,并且要符合标识符的命名规则。每个服务器管理的数据库最多为32767个。2.3.3 使用Transact-SQL语言创建数据库ON:指定存放数据库的数据文件信息。该关键字后面可以包含用逗号分隔的列表,列表用于定义主文件组的数据文件。主文件组的文件列表后可以包含用逗号分隔的列表,列表用于定义用户文件组及其中的文件。2.3.3 使用Transact-SQL语言创建数据库PRIMARY:用于指定主文件组中的文件。主文件组不仅包含数据库系统表中的全部内容,而且还包含用户文件组中没有包含的

21、全部对象。主文件组的第一个由指定的文件是主文件,该文件包含数据库的逻辑起点及其系统表。一个数据库只能有一个主文件,默认情况下,如果不指定PRIMARY关键字,则在命令中列出的第一个文件将被默认为主文件。2.3.3 使用Transact-SQL语言创建数据库LOG ON:指明事务日志文件的明确定义。如果没有本选项,则系统会自动产生一个文件名前缀,与数据库名相同,容量为所有数据库文件大小1/4的事务日志文件。FOR LOAD:表示计划将备份直接装入新建的数据库,主要是为了和过去的SQL Server版本兼容。2.3.3 使用Transact-SQL语言创建数据库FOR ATTACH:表示在一组已经

22、存在的操作系统文件中建立一个新的数据库。NAME:指定数据库的逻辑名称,这是在SQL Server系统中使用的名称,是数据库在SQL Server中的标识符。2.3.3 使用Transact-SQL语言创建数据库FILENAME:指定数据库所在文件的操作系统文件名称和路径,该操作系统文件名和NAME的逻辑名称一一对应。2.3.3 使用Transact-SQL语言创建数据库SIZE:指定数据库的初始容量大小。如果没有指定主文件的大小,则SQL Server默认其与模板数据库中的主文件大小一致,其他数据库文件和事务日志文件则默认为1MB。指定大小的数字size可以使用KB、MB、GB和TB后缀,默

23、认的后缀为MB。size中不能使用小数,其最小值为512KB,默认值为1MB。主文件的size不能小于模板数据库中的主文件。2.3.3 使用Transact-SQL语言创建数据库MAXSIZE:指定操作系统文件可以增长到的最大尺寸。如果没有指定,则文件可以不断增大直到充满磁盘。2.3.3 使用Transact-SQL语言创建数据库FILEGROWTH:指定文件每次增加容量的大小,当指定数据为0时,表示文件不增长。增加量可以确定为以KB、MB作后缀的字节数或以%作后缀的被增加容量文件的百分比来表示。默认后缀为MB。如果没有指定FILEGROWTH,则默认值为10%,每次扩容的最小值为64KB。2

24、.3.3 使用Transact-SQL语言创建数据库例2-1 使用CREATE DATABASE创建一个BOOK2数据库,所有参数均取默认值。程序清单如下:CREATE DATABASE BOOK22.3.3 使用Transact-SQL语言创建数据库例2-2 创建一个新的数据库MYBOOK,该数据库包含两个数据库文件和3个事务日志文件。2.4 修改数据库2.4.1 修改数据库名称使用系统存储过程sp_renamedb更改数据库的名称。在重命名数据库之前,应该确保没有用户使用该数据库。2.4.1 修改数据库名称系统存储过程sp_renamedb的语法形式如下:sp_renamedb dbnam

25、e=old_name ,newname=new_name其中的参数说明如下:dbname = old_name表示当前数据库的名称。newname = new_name表示数据库的新名称。2.4.1 修改数据库名称例2-3 将数据库BOOKBACK重命名为BOOKSBACK。程序清单如下:sp_renamedb BOOKBACK,BOOKSBACK2.4.2 修改数据库属性例2-4 修改数据库BOOKSBACK的属性。在企业管理器中,右击所要修改的数据库BOOKSBACK的名称,从弹出的快捷菜单中选择“属性”命令。2.4.3 缩小数据库缩小数据库可以通过企业管理器或通过Transact-SQL

26、语言进行收缩,也可以设置为按给定的时间间隔自动收缩。1使用企业管理器缩小数据库在企业管理器中,右击相应的数据库,这里右击BOOKSBACK,从弹出的快捷菜单中依次选择“所有任务”“收缩数据库”选项,会出现“收缩数据库”对话框。2使用Transact-SQL语言缩小数据库(1)使用DBCC SHRINKDATABASE命令可收缩指定数据库中的数据文件。DBCC SHRINKDATABASE(database_name,target_percent,NOTRUNCATE |TRUNCATEONLY)2使用Transact-SQL语言缩小数据库其中的参数说明如下:database_name:要收缩的

27、数据库名称。target_percent:当数据库收缩后,数据库文件中剩余可用空间的百分比。 2使用Transact-SQL语言缩小数据库NOTRUNCATE:被释放的文件空间依然保持在数据库文件中。如果未指定,所释放的文件空间将被操作系统回收。2使用Transact-SQL语言缩小数据库TRUNCATEONLY:将数据库文件中未使用的空间释放给操作系统,并将文件收缩到上一次所分配的大小。使用 TRUNCATEONLY 时,将忽略 target_percent的限制。2使用Transact-SQL语言缩小数据库例2-5 先将数据库BOOKSBACK的数据库文件增大至24MB,然后使用DBCC

28、SHRINKDATABASE缩小此数据库的大小,保留自由空间为80。2使用Transact-SQL语言缩小数据库例2-6 先将数据库BOOKSBACK的数据文件增大至22MB,然后使用DBCC SHRINKFILE将数据库的数据文件缩小到6MB大小。3按给定的时间间隔自动收缩数据库数据库的自动收缩可以在数据库属性中的“选项”选项卡中进行设置。在“选项”选项卡中选中了“自动收缩”复选框后,系统会在什么时候进行自动收缩还要看用户在执行“所有任务”“收缩数据库”后所弹出的“收缩数据库”对话框的“调度”中的参数设置而定。2.5 删除数据库对于那些不再需要的数据库,可以删除它们以释放在磁盘上所占用的空间

29、。删除数据库有两种方式,即使用企业管理器和使用Drop语句。2.5.1 使用企业管理器删除数据库在企业管理器中,右击所要删除的数据库,从弹出的快捷菜单中选择“删除”命令或直接按下键盘上Delete按钮即可删除数据库,也可以选择数据库文件夹或图标后单击工具栏中的删除图标来删除数据库。2.5.1 使用企业管理器删除数据库例2-7 删除数据库BOOK2。2.5.2 使用Drop语句删除数据库使用Drop语句可以从SQL Server 2000中一次删除一个或多个数据库。其语法形式如下:Drop database database_name,n2.5.2 使用Drop语句删除数据库例2-8 删除数据库

30、MYBOOK。在查询分析器中输入以下程序语句:drop database MYBOOK说明:对正在使用的数据库不能被删除,因此,删除某个数据库之前,应该先关闭此数据库。2.6 本章小结SQL Server 2000中的每一个数据库由多个文件组成。每一个文件对应着两个名称:逻辑文件名和物理文件名。当使用Transact-SQL语言管理这些文件时,使用它们的逻辑文件名;而在磁盘中存储文件时,使用物理文件名。2.6 本章小结根据文件的功能划分,可分为两大类,即数据库文件和事务日志文件。数据库文件是存放数据库数据和数据库对象的文件,而事务日志文件用来存储数据库的更新情况。2.6 本章小结SQL Ser

31、ver 2000安装成功后,系统会自动创建6个系统数据库,它们分别是Master、Model、Msdb、Tempdb、Pubs和Northwind。2.6 本章小结创建数据库的过程实际上就是为数据库设计名称、设计所占用的存储空间和文件存放位置的过程。创建数据库的方法有以下三种:使用向导创建数据库、使用企业管理器创建数据库和使用Transact-SQL语言创建数据库。2.6 本章小结在SQL Server 2000中可以使用系统存储过程sp_renamedb更改数据库的名称。可以通过企业管理器或通过Transact-SQL语言进行数据库的收缩,也可以设置为按给定的时间间隔自动收缩数据库。2.6

32、本章小结删除数据库有两种方式,即使用企业管理器和使用Transact-SQL语言中的Drop database语句。两者的区别是:使用企业管理器进行删除操作,一次只能删除一个数据库;而使用Drop database语句,可以同时删除多个数据库。2.7 思考与练习1数据库文件包含哪两大类?各自的作用是什么?2SQL Server 2000的系统数据库有哪些,各自的功能是什么?3简述SQL Server 2000中文件组的作用和分类。2.7 思考与练习4使用企业管理器创建名为example1的数据库,并设置数据库主文件名为example1_data,大小为5MB,日志文件名为example1_lo

33、g,大小为3MB。2.7 思考与练习5使用Transact-SQL语言创建名为example2的数据库,主文件的逻辑文件名为example2_data,主文件的物理文件名为example2.mdf,最大尺寸为无限大,增长速度为15%;日志文件的逻辑文件名为example2_log,日志文件的物理文件名为example2.ldf,初始大小为3MB,最大尺寸为10MB,增长速度为1MB。2.7 思考与练习6将数据库example1的名称修改为example3。7使用Transact-SQL语言同时删除数据库example2和example3。第3章 数据表的创建和管理北华航天工业学院李伟红本章学习

34、目标掌握SQL Server 2000中的数据类型;掌握如何创建数据表;了解创建和删除自定义数据类型的方法;掌握增加、删除和修改表中字段的方法;掌握查看数据表的定义和表中数据的方法;掌握删除数据表的方法。3.1 数据类型为了在数据库中存储不同类型的数据,SQL Server 2000提供了丰富的数据类型,包括系统数据类型和用户自定义数据类型。3.1.1 系统数据类型系统数据类型是SQL Server预先定义好的,用户可以直接使用。SQL Server 2000提供的系统数据类型有以下几大类,共25种。1整型数据类型(1)int(integer)(2)smallint(3)tinyint2浮点数

35、据类型浮点数据类型用于存储十进制小数。(1)real:每个real类型的数据占用4个字节的存储空间。(2)float:可以精确到第15位小数。(3)decimal和numeric。3字符数据类型(1)char:其定义形式为:char(n)(2)varchar:用varchar数据类型可以存储长达8 000个字符的可变长度字符串。(3)nchar:nchar数据类型采用unicode(统一字符编码标准)字符集。(4)Nvarchar:nvarchar是使用unicode字符集的varchar数据类型。4日期和时间数据类型(1)datetime:用于存储日期和时间的结合体。所占用的存储空间为8个字

36、节。(2)smalldatetime:与datetime数据类型类似,但其日期时间范围较小。5文本和图形数据类型(1)text:用于存储大容量文本数据。(2)ntext:ntext数据类型采用unicode标准字符集。(3)image:用于存储照片、目录图片或者图画。6货币数据类型(1)money:用于存储货币值。(2)smallmoney:与money数据类型类似,但范围比money数据类型小。7位数据类型bit称为位数据类型,其数据有两种取值:0和1。8二进制数据类型(1)binary:二进制数据类型的最大长度(即n的最大值)为8000,常用于存储图像等数据。(2)varbinary:数据

37、的存储长度是变化的,它为实际所输入数据的长度加上4字节。其他含义同binary。在输入二进制常量时,需在该常量前面加一个前缀0 x。9特殊数据类型(1)timestamp:也称作时间戳数据类型。(2)uniqueidentifier:也称作惟一标识符数据类型。uniqueidentifier用于存储一个16字节长的二进制数据类型。10新增数据类型SQL Server 2000新增了三种数据类型,即bigint、sql_variant和table。(1)bigint:每个bigint类型的数据占用8个字节的存储空间。(2)sql_variant:用于存储除文本、图形数据和timestamp类型数

38、据外的其他任何合法的SQL Server数据。(3)table:用于存储对表或者视图处理后的结果集。3.1.2 自定义数据类型1创建用户自定义数据类型例3-1 在BOOKS数据库中定义一个新的数据类型,类型名称为“图书编码类型”,字符型,长度为12位,不允许为空。1创建用户自定义数据类型例3-2 使用系统存储过程定义一个新的数据类型,类型名称为“价格类型”,货币型,允许为空。程序清单如下:USE BOOKSGOEXECUTE sp_addtype 价格类型, money, null2删除用户自定义数据类型删除用户自定义数据类型的方法有两种,即使用企业管理器或者使用系统存储过程sp_dropty

39、pe。例3-3 删除前面定义的数据类型“价格类型”。2删除用户自定义数据类型例3-4 删除用户自定义数据类型“图书编码类型”。程序清单如下:USE BOOKSGOEXECUTE sp_droptype 图书编码类型3.2 创建数据表一个完整的数据表主要包括两部分,即数据表结构和表中的记录。因此,创建一个新的数据表主要分为两步:第一步是先创建数据表的结构,第二步是录入表中的数据。3.2.1 在企业管理器中创建数据表在企业管理器中,打开想要创建新表的数据库,右击“表”对象,或者在窗口右侧中的表显示窗口中右击,从弹出的快捷菜单中选择“新建表”命令。例3-5 创建一个新的数据表,表名为“图书基本信息表

40、”。3.2.2 利用Transact-SQL语言创建表CREATE TABLE database_name. owner .| owner. table_name( | column_name AS computed_column_expression| ,n) ON filegroup | DEFAULT TEXTIMAGE_ON filegroup | DEFAULT := column_name data_type 3.2.2 利用Transact-SQL语言创建表 COLLATE DEFAULT constant_expression | IDENTITY ( seed , incre

41、ment ) NOT FOR REPLICATION ROWGUIDCOL .n 3.2.2 利用Transact-SQL语言创建表 := CONSTRAINT constraint_name NULL | NOT NULL | PRIMARY KEY | UNIQUE CLUSTERED | NONCLUSTERED WITH FILLFACTOR = fillfactor ON filegroup | DEFAULT 3.2.2 利用Transact-SQL语言创建表|FOREIGN KEY (column ,n)REFERENCES ref_table ( ref_column ,n)

42、NOT FOR REPLICATION| CHECK NOT FOR REPLICATION ( logical_expression )3.2.2 利用Transact-SQL语言创建表 := CONSTRAINT constraint_name PRIMARY KEY | UNIQUE CLUSTERED | NONCLUSTERED ( column ASC | DESC ,.n ) WITH FILLFACTOR = fillfactor ON filegroup | DEFAULT 3.2.2 利用Transact-SQL语言创建表| FOREIGN KEY ( column ,.n

43、 ) REFERENCES ref_table ( ref_column ,.n ) NOT FOR REPLICATION | CHECK NOT FOR REPLICATION ( search_conditions ) 3.2.2 利用Transact-SQL语言创建表其中各参数的说明如下:database_name:用于指定所创建表的数据库名称。database_name 必须是现有数据库的名称。如果不指定数据库,database_name 默认为当前数据库。3.2.2 利用Transact-SQL语言创建表owner:用于指定新建表的所有者的用户名,owner 必须是 databas

44、e_name 所指定的数据库中的现有用户名,owner 默认为当前注册用户名。3.2.2 利用Transact-SQL语言创建表table_name:用于指定新建表的名称。表名必须符合标识符规则。对于数据库来说,database_name、owner_name及object_name 必须是惟一的。表名最多不能超过 128 个字符。3.2.2 利用Transact-SQL语言创建表column_name:用于指定新建表的列名。computed_column_expression:用于指定计算列的列值表达式。3.2.2 利用Transact-SQL语言创建表ON filegroup | DEFA

45、ULT:用于指定存储表的文件组名。如果指定 filegroup,则表将存储在指定的文件组中。数据库中必须存在该文件组。如果使用了DEFAULT选项,或者省略了ON子句,则新建的表会存储在默认的文件组中。3.2.2 利用Transact-SQL语言创建表TEXTIMAGE_ON:用于指定text、ntext和image列的数据存储的文件组。如果表中没有text、ntext或image列,则不能使用TEXTIMAGE_ON。如果没有指定TEXTIMAGE_ON子句,则text、ntext和image列的数据将与数据表存储在相同的文件组中。3.2.2 利用Transact-SQL语言创建表data_

46、type:用于指定列的数据类型。DEFAULT:用于指定列的默认值。constant_expression:用于指定列的默认值的常量表达式,可以为一个常量或NULL或系统函数。3.2.2 利用Transact-SQL语言创建表IDENTITY:用于将列指定为标识列。seed:用于指定标识列的初始值。increment:用于指定标识列的增量值。3.2.2 利用Transact-SQL语言创建表NOT FOR REPLICATION:用于指定列的IDENTITY属性,在把从其他表中复制的数据插入到表中时不发生作用,即不生成列值,使得复制的数据行保持原来的列值。ROWGUIDCOL:用于将列指定为全

47、局惟一标识行号列。3.2.2 利用Transact-SQL语言创建表COLLATE:用于指定表的校验方式。column_constraint和table_constraint:用于指定列约束和表约束。3.2.2 利用Transact-SQL语言创建表例3-6 在数据库BOOKS中创建一个新表“读者基本信息表”。3.3 修改数据表结构更改表名的方法是在企业管理器中,右击要更名的数据表,在弹出的快捷菜单中选择“重命名”命令,并输入新的表名称。3.3 修改数据表结构在企业管理器中,打开要修改数据表结构的数据库,右击要进行修改的数据表,从弹出的快捷菜单中选择“设计表”命令。在此窗口中,可以完成增加、删

48、除和修改字段的操作。3.4 管理数据表中记录当一个数据表的表结构设计完成后,就可以在数据表中录入数据了。可以使用企业管理器或使用SQL语言中的INSERT语句插入数据。3.4 管理数据表中记录在企业管理器中,打开指定的数据库,右击要录入数据的数据表,从弹出的快捷菜单中选择“打开表”命令,该命令还有三个子命令。“返回所有行”:用于显示数据表中的所有记录。“返回首行”:用于显示前N条记录,N可以自己输入。“查询”:用于查询具体某条记录。3.5 删除数据表3.5.1 利用企业管理器删除数据表在企业管理器中,展开指定的数据库,右击要删除的数据表,从弹出的快捷菜单中选择“删除”命令。3.5.2 使用Tr

49、ansact-SQL语言删除数据表可以使用Transact-SQL语言中的DROP TABLE语句删除数据表。DROP TABLE语句的语法形式如下:DROP TABLE table_name ,n3.5.2 使用Transact-SQL语言删除数据表例3-7 删除BOOKS数据库中的数据表“读者基本信息表”。可以使用两种方法:方法一:USE BOOKSGOdrop table 读者基本信息表3.5.2 使用Transact-SQL语言删除数据表方法二:USE MASTERGOdrop table BOOKS.dbo.读者基本信息表使用企业管理器或使用drop table语句一次都可以删除一个

50、或多个数据表。3.6 本章小结SQL Server 2000提供了丰富的数据类型,包括系统数据类型和用户自定义数据类型。SQL Server 2000新增加了三种数据类型:bigint、sql_variant和table。3.6 本章小结创建用户自定义数据类型可以使用企业管理器或者使用系统存储过程sp_addtype创建。删除用户自定义数据类型的方法也有两种,分别是使用企业管理器或者使用系统存储过程sp_droptype。删除用户自定义数据类型的前提是数据库内没有任何数据表使用此数据类型。3.6 本章小结一个完整的数据表主要包括两部分:数据表结构和数据表中的记录。创建一个新的数据表首先要创建数

51、据表的结构,然后再录入表中的数据。只有表结构而没有任何记录的数据表称为空表。3.6 本章小结创建数据表可以在企业管理器中完成,也可以通过Transact-SQL语言实现。在使用数据表的过程中,可以根据用户的需要更改数据表的结构。用户可以增加、删除和修改表中的字段,也可以更改数据表的名称。3.6 本章小结当一个数据表的表结构设计完成后,就可以在数据表中录入数据了。可以使用企业管理器或使用SQL语言中的INSERT语句插入数据。3.6 本章小结查看数据表中的记录信息的方法是,在企业管理器中打开指定的数据库,右击要查看数据的数据表,从弹出的快捷菜单中选择“打开表”命令中的“返回所有行”子命令。3.6

52、 本章小结删除数据表的方法也有两种,可以在企业管理器中右击要删除的数据表,在弹出的快捷菜单中选择“删除”命令,确认后就可删除;也可以使用Transact-SQL语言中的DROP TABLE语句删除数据表。两种方法都可以一次删除一个或多个数据表。3.7 思考与练习1SQL Server 2000常用的系统数据类型有哪些?2在BOOKS数据库中,创建一个新的数据表,名称为“图书借阅信息表”。3自己设计一个用户自定义数据类型“读者编号类型”,并上机实现。4使用企业管理器向“读者基本信息表”中录入6条新记录。3.7 思考与练习5使用SQL语言中的INSERT语句向“图书借阅信息表”中加入5条新记录。6

53、上机练习修改数据表中的记录信息。7上机练习修改数据表的名称。8上机练习使用两种方法删除数据库中的数据表。第4章 数据完整性的设计与实现北华航天工业学院李伟红本章学习目标掌握数据完整性的分类;掌握如何创建主键约束;掌握设置惟一性约束的方法;掌握设置默认约束的方法;掌握设置检查约束的方法;掌握设置外键约束的方法。4.1 概 述数据的完整性主要涉及以下几个方面:(1)实体完整性。(2)域完整性。(3)参照完整性。(4)用户定义的完整性。本章主要介绍前三种数据完整性的设计与实现方法。4.2 实体完整性的设计与实现实体完整性要求数据表中的每一行在表中是惟一的实体。采用以下三种方式,即主键约束、IDENT

54、ITY属性和惟一性约束。4.2.1 主键约束通过定义主键,能够惟一地确定表中的每一条记录。定义为主键的列不允许为空,且image和text类型的列不能被指定为主键。可以将数据表中的一列或多列的组合定义为主键。1通过企业管理器管理主键约束例4-1 在“图书基本信息表”中为“图书编码”字段设置主键约束。2使用Transact-SQL语句设置主键约束CONSTRAINT constraint_name PRIMARY KEY CLUSTERED|NONCLUSTERED (column_name,n)2使用Transact-SQL语句设置主键约束其中各参数的说明如下:constraint_name:

55、用于指定约束的名称,约束的名称在数据库中应该是惟一的。如果不指定,则系统会自动生成一个约束名。2使用Transact-SQL语句设置主键约束CLUSTERED|NONCLUSTERED:用于指定索引的类型,即聚簇索引或者非聚簇索引,CLUSTERED为默认值。column_name:用于指定主键的列名。主键最多由16个列组成。2使用Transact-SQL语句设置主键约束例4-2 重新创建“读者基本信息表”,并为其中的“读者编号”字段设置主键约束。4.2.2 IDENTITY属性可以使用IDENTITY属性来实现实体完整性。方法是在数据表中创建一个标识列,该标识列中的数据由系统自动生成。1通过

56、企业管理器管理IDENTITY属性例4-3 使用企业管理器创建一个新的数据表TEMP1,包含4个字段:图书编码、书名、作者、出版社,并将图书编号字段设置成一个标识列,列中的数据从1开始,每次增加1。2使用Transact-SQL语句设置IDENTITY属性使用Transact-SQL语句设置IDENTITY属性的语法形式如下:IDENTITY(种子, 递增量)其中,“种子”是初始值;“递增量”是每次增加的数值。说明:必须同时指定种子和递增量,或者二者都不指定。如果二者都未指定,则默认为(1,1)。2使用Transact-SQL语句设置IDENTITY属性例4-4 使用Transact-SQL语

57、句创建一个新的数据表TEMP2,包含4个字段:图书编码、书名、作者、出版社,并将图书编码字段设置成一个标识列,列中的数据从3开始,每次增加2。4.2.3 惟一性约束惟一性约束可以指定一个或多个字段列的组合值具有惟一性,即不会出现重复的值。在一个数据表中可以为多个字段或字段的组合设置惟一性约束。1通过企业管理器管理惟一性约束例4-5 使用企业管理器在“图书基本信息表”中为“书名”和“作者”两个字段的组合字段设置惟一性约束。2使用Transact-SQL语句设置惟一性约束使用Transact-SQL语句设置惟一性约束的语法形式如下:CONSTRAINT constraint_name UNIQUE

58、 CLUSTERED|NONCLUSTERED(column_name,n)2使用Transact-SQL语句设置惟一性约束各参数说明如下:constraint_name:惟一性约束的名称。UNIQUE:指定通过惟一索引为给定的一列或多列提供实体完整性约束。CLUSTERED:指定创建聚集索引。NONCLUSTERED:指定创建非聚集索引。2使用Transact-SQL语句设置惟一性约束例4-6 使用Transact-SQL语句创建一个新的数据表“图书基本信息表2”,并为“书名”和“作者”两个字段的组合字段设置惟一性约束。4.3 域完整性的设计与实现域完整性是用来保证在数据表中输入有效的数据值

59、。域完整性可以通过定义字段的数据类型、设置字段非空、检查约束、默认约束和规则来实现。4.3.1 默认约束默认约束完成的功能是对于设置了默认约束的字段,如果在录入记录时没有提供输入值,则系统会自动为该字段填入默认值。默认值可以是常量、函数或者空值。1使用企业管理器管理默认约束例4-7 在“图书基本信息表”中为“类别”字段设置默认约束“计算机”。2使用Transact-SQL语句设置默认约束可以使用DEFAULT关键字来指定某个字段的默认值。例4-8 创建“图书基本信息表3”,并为“类别”字段设置默认约束“计算机”。4.3.2 检查约束设置检查约束的目的是对输入的数据值进行检查,满足条件的数据可以

60、保存在数据表中,对于不满足条件的数据则拒绝接受。在某一个数据表中,对于每一个字段可以设置多个检查约束。1使用企业管理器管理检查约束例4-9 使用企业管理器在“图书基本信息表”中为“定价”字段设置检查约束,要求输入的数据必须大于0。2使用Transact-SQL语句设置检查约束使用Transact-SQL语句设置检查约束的语法形式如下:CONSTRAINT constraint_name CHECK NOT FOR REPLICATION (logical_expression)2使用Transact-SQL语句设置检查约束其中,参数NOT FOR REPLICATION用于指定在把从其他表中复

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论