SQLSERVER, 数据库管理

上传人:猪** 文档编号:243146285 上传时间:2024-09-16 格式:PPT 页数:261 大小:6MB
返回 下载 相关 举报
SQLSERVER, 数据库管理_第1页
第1页 / 共261页
SQLSERVER, 数据库管理_第2页
第2页 / 共261页
SQLSERVER, 数据库管理_第3页
第3页 / 共261页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,数据库与程序设计,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,第,1,章 数据库技术基础,第,2,章,SQL Server,基础,第,3,章 数据库管理,第,4,章 查询和视图,第,5,章 存储过程和触发器,第,6,章 基于,Web,的数据库开发技术,第,7,章 数据库应用开发案例,第,8,章 数据库安全性与维护,目,录,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,SQL SERVER,数据库管理,数据库,是数据库管理系统的核心,是存放数据库对象的容器,是使用数据库系统时首先面对的对象。,数据库的效率和性能在很大程度上取决于数据库的设计和优化。,数据库管理就是,设计数据库,、,定义数据库,和,维护数据库,的过程。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,第,3,章,SQL SERVER,数据库管理,3.1,数据库结构,3.2,数据库的基本操作,3.3,数据表的基本操作,3.4,表数据的基本操作,3.5,数据完整性的实现,3.6,索引,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.1,数据库对象,数据库中的数据存储在物理磁盘上,由操作系统进行管理;同时,也保存在数据库中由,DBMS,统一管理的。,但数据存储在物理磁盘上与数据被,DBMS,管理是两种完全不同的数据组织形式。,SQL Server 2005,数据库管理系统将数据组织成,数据表、视图,等逻辑对象,这是从逻辑角度来组织与管理数据。,为了数据库管理员管理数据的方便和与操作系统实际情况相一致,,SQL Server 2005,将数据库呈现为,各种数据库的文件,,这是从物理角度来组织与管理数据。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.1,数据库对象,1,、数据库逻辑结构,从逻辑角度,,SQL Server 2005,将数据库组织成为各种数据库对象,如,数据表、视图、索引、数据类型、存储过程、触发器,等。,这些数据库对象是用户使用数据库的基本单位。,如图,3-1,所示为,SQL Server2005,对象资源管理器中所呈现的各种数据库对象。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,图,3-1 SQL Server2005,对象资源管理器中所呈现的各种数据库对象。,SQL Server2005,数据库对象,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.1,数据库对象,1,、数据库逻辑结构,(1),表和视图,表,,即,数据表,或,基本表,,它是在数据库中存放的实际关系,用来存储大量的数据。,一个数据库中的表可多达,20,亿个,每个表中可以有,1024,个列(字段)和无数个行(记录)。,视图,是为了用户查询方便或根据数据安全的需要而建立的虚表。,视图既可以是一个表中数据的子集,也可以由多个表连接而成。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.1,数据库对象,1,、数据库逻辑结构,(2),存储过程,存储过程,是通过,T-SQL,编写的程序。,存储过程包括,系统存储过程,和,用户定义存储过程,。用户定义存储过程是由用户编写的,它可以自动执行存储过程中安排的任务。,(3),触发器,触发器,也是一种用,T-SQL,编写的程序,当表中发生特殊事件时自动执行。,例如,可为表的插入、更新或删除操作设计触发器。当执行这些操作时,相应的触发器会自动启动。,触发器主要用于保证数据的完整性。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.1,数据库对象,1,、数据库逻辑结构,(4),类型,数据类型,是存储在数据表中的各种,用户定义,数据类型。,(5),规则和默认值,规则,和,默认值,用于加强数据库的数据完整性。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.1,数据库对象,2,、数据库物理结构,从物理角度看,,SQL Server 2005,数据库以文件的形式存储在计算机硬盘上,一般一个数据库被组织成,数据文件,和,日志文件,两种类型的文件。,数据文件,又分,为主数据文件,和,辅助数据文件,两种形式。,数据库中的所有数据和对象都存储在下列三种物理文件中:,(1),主数据文件,(.,mdf,),也称基本数据文件,该文件包含数据库的启动信息,并用于存储数据。,一个数据库必须有且只有一个主数据文件,。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.1,数据库对象,2,、数据库物理结构,(2),辅助数据文件,(,.,ndf,),又称从属文件,当数据库中的数据较多时,主数据文件的容量超过了系统的限制,就需要设置一个或多个辅助数据文件。它含有不包含在主数据文件中的数据。,一个数据库可以没有、也可有一个或多个辅助数据文件。,(3),日志文件,(,.,ldf,),记录了用户对数据库的所有操作。因此,根据日志文件信息可以恢复一个数据库。,每个数据库至少有一个日志文件,也可以有多个日志文件。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.1,数据库对象,3,、文件组,SQL Server,的多个文件可以归纳成为一个文件组(,Filegroup,)。,文件组,是数据库中数据文件的逻辑组合。,使用文件组可以实现将数据分布在多个磁盘上并在查询过程中使用并行线程同时扫描多个磁盘,从而加快查询速度、改善系统性能。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.1,数据库对象,3,、文件组,数据库文件和文件组必须遵循以下规则:,一个文件和文件组只能被一个数据库使用。也就是说,一个文件和文件组中不能包含其他数据库的数据;,一个数据库文件只能属于一个文件组;,日志文件不能被加入文件组中,即文件组只包含主数据文件和辅助数据文件。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.1,数据库对象,3,、文件组,文件组有以下三种类型。,(1),主文件组,:,主文件组(,Primary,Filegroup,)中包含着主数据文件及相关内容。,在创建数据库时,,系统自动创建了主文件组,,并将主数据文件及系统表的所有页都分配到主文件组中。,(2),用户定义文件组,:,由用户通过,SQL Server Management Studio,或,T-SQL,语句中的,FILE GROUP,子句创建的文件组称为用户定义文件组,(User-Defined,Filegroup,)。,该组中包含逻辑上一体的数据文件和相关信息,大多数数据库只需要一个文件组和一个日志文件就可很好的运行。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.1,数据库对象,3,、文件组,文件组有以下三种类型。,(3),默认文件组,:,在每个数据库中,同一时间只能有一个文件组是,默认文件组,(,Default,Filegroup,),。,当进行数据操作时,如果不指定文件组,则系统自动选择默认文件组。,使用,T-SQL,的,ALTER DATABASE,语句可以指定数据库的默认文件组。,在不特别指定的情况下,系统将主文件组认定为默认文件组,。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.2,系统数据库和用户数据库,SQL Server 2005,中含两种类型的数据库:,系统数据库,用户数据库,系统数据库,中记录着,SQL Server 2005,的配置情况、任务情况和用户数据库的情况等系统管理的信息,我们使用系统数据库来操作和管理各种数据库。,用户数据库,是根据用户要求创建的数据库,保存着用户直接需要的数据信息。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.2,系统数据库和用户数据库,SQL Server 2005,提供了,4,个系统数据库和,2,个范例数据库。,4,个系统数据库包括,master,、,model,、,msdb,、,tempdb,。,2,个范例数据库是,Adventure Works,、,Adventure WorksDW,,范例数据基于一个虚拟的公司,Adventure Works Cycles,,这是一个大型的跨国制造公司,它生产金属和复合材料自行车,产品远销北美、欧洲和亚洲市场。,范例数据库可以作为,SQL Server,的学习工具。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.2,系统数据库和用户数据库,1,、,master,数据库,master,数据库,记录了,SQL Server,系统的所有系统级别信息,主要有:,所有的登录信息,系统设置信息,SQL Server,初始化信息,系统中其他系统数据库和用户数据库信息,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.2,系统数据库和用户数据库,1,、,master,数据库,如果计算机上安装了一个,SQL Server 2005,系统,那么系统首先会建立一个,master,数据库来记录系统的有关,登录账户、系统配置、数据库文件等初始化信息,;,如果用户在这个,SQL Server 2005,系统中建立一个用户数据库,(,如通用论文管理系统数据库,),,系统马上将用户数据库的有关,用户管理、文件配置、数据库属性等信息写入到,master,数据库,。,系统是根据,master,数据库里的信息来管理系统和其他数据库的。,如果,master,数据库信息被破坏,整个,SQL Server2005,系统将受到影响,用户数据库将不能被使用。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.2,系统数据库和用户数据库,2,、,model,数据库,model,数据库,是创建所有用户数据库和,tempdb,数据库的,模版文件,。,当创建数据库时,系统会将,model,数据库中的内容复制到新建的数据库中。,因为每次启动,SQL Server,时都会创建,tempdb,,,所以,model,数据库必须始终存在于,SQL Server,系统中,。,当如果修改,model,数据库,之后创建的所有数据库都将继承这些修改。,例如,可以设置权限或数据库选项或者添加对象,例如,表、函数或存储过程。,利用,model,数据库的模版特性,通过更改,model,数据库的设置,并将常使用的数据库对象复制到,model,数据库中,可以大大简化数据库及其对象的创建、设置工作,节省大量的时间。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.2,系统数据库和用户数据库,3,、,msdb,数据库,msdb,数据库,是,SQL Server 2005,代理服务使用的数据库,供代理程序调度警报作业以及记录操作员的操作时使用。,SQL Server,、,SQL Server Enterprise Manager,和,SQL Server Agent,使用,Msdb,数据库来 存储计划信息以及与备份和恢复相关的信息。尤其是,SQL Server Agent,需要使用它来执行 安排工作和警报、记录操作者等操作。,例如,当很多用户在使用一个数据库时,经常会出现多个用户对同一数据的修改而造成数据不一致现象,或者是用户对某些数据和对象的非法操作等。为了防止上述现象的发生,,SQL Server,里面有一套代理程序能够按照系统管理员的设定来监控上述现象的发生,以便及时向系统管理员发出警报。当代理程序调度警报和作业、记录操作员操作的时候,系统要用到或实时产生许多相关信息,这些信息一般存储在,msdb,数据库里面。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.2,系统数据库和用户数据库,4,、,tempdb,数据库,tempdb,数据库,用作系统的临时存储过程空间,其主要作用如下:,存储用户建立的临时表和临时存储过程,存储用户说明的全局变量值,为数据排序创建临时表,存储过程用户利用游标说明所筛选出来的数据,该数据库在,SQL Server,每次启动时都重新创建,也就是说用户在,tempdb,数据库里建立的所有对象都将被删除,,因此该数据库在系统启动时总是干净的。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.1,数据库结构,3.1.2,系统数据库和用户数据库,无论是系统数据库还是用户数据库,,每个,SQL Server 2005,数据库在物理上都由至少一个数据文件和一个事务日志文件组成,系统用文件组的形式把它们作为一个单元来管理。,数据文件,主要记录数据库的启动信息并用来存储数据。,而事务,日志文件,里包含着用于恢复数据库事务的日志信息,使得数据库操作具有事务功能,以保证数据的一致性和完整性。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.2,数据库的基本操作,对用户数据库的操作,,SQL Server 2005,中提供了两种方法,:,一种方法是使用,SQL Server Management Studio,对象资源管理器,此方法直观简单,以图形化的方式完成数据库的操作;,另一种方法是,使用,TSQL,语句,此方法可以将创建数据库的代码,(,或称脚本,),保存下来,在其他机器上运行可以操作相同的数据库。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.2,数据库的基本操作,3.2.1,创建用户数据库,在这一节中我们首先创建,student,数据库,该数据库为学生成绩管理提供数据库服务。,1,、使用“对象资源管理器”创建用户数据库,(,1,)打开,SQL Server 2005,的,Management Studio,,进入对象资源管理器,展开指定的服务器,,鼠标,右击“数据库”,,在快捷菜单中选择“新建数据库”,如图,3-2,所示。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.2,数据库的基本操作,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.2,数据库的基本操作,3.2.1,创建用户数据库,(,2,)打开“新建数据库”对话框,在该对话框的“常规”标签页内,如图,3-3,所示,可以定义,:,数据库的名称,、,数据库的所有者,、,是否使用全文索引、,数据文件和日志文件的,逻辑名称,和路径,(,物理名称,),、,文件组、,初始大小和增长方式等。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,相关信息的填写,在“数据库名称”文本框中输入要创建的数据库名称:,student,;,“所有者”文本框是选择数据库操作的用户,这里选择默认值表示数据库所有者为登录,Windows,的管理员账户;,在“逻辑名称”文本框里可以修改数据文件和日志文件的逻辑名称。,系统默认的数据文件初始大小为,3MB,、增量为,1MB,、不限制增长,日志文件为,1MB,、增量为,10%,、不限制增长。用户可以在这里修改这些数据库设计参数。,单击“路径”框里的“,”,,系统弹出如图,3-4,所示的“定位文件夹”的界面,在此可以修改数据库文件存储路径。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,新建数据库,mydatabase,后的界面,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.2,数据库的基本操作,3.2.2,修改用户数据库,建立数据库之后,可以根据需要对数据库的设置进行修改,以满足新的要求。,1,、使用“对象资源管理器”查看和修改数据库,打开,Management Studio,,进入对象资源管理器,展开服务器和数据库,;,鼠标右击,用户数据库,student,图标,从快捷菜单中选择“属性”,系统弹出如图,3-8,所示的“数据库属性”界面。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.2.2,修改用户数据库,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,(,1,)更改数据库的所有者,打开“数据库属性”的“文件”标签页,单击“所有者”文本框旁边的“,”,按钮,,弹出如图,3-9,(,a,)所示界面,单击“浏览”按钮,就可在“查找对象”对话框(图,3-9,(,b,) )上选择新的数据库的所有者。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,(,2,)调整数据库的增长属性,打开,“数据库属性”的“文件”标签页,单击“自动增长”文本框里的“,”,按钮,,弹出如图,3-10,所示的设置界面,就可以更改数据库的自动增长属性值了。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,(,3,)添加文件组,打开“数据库属性”的“文件组”标签页,单击“添加”按钮,弹出如图,3-11,所示的界面,就可以添加新的文件组。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,(,4,)限制访问数据库的用户,某些情况下,例如在维护或测试数据库时,数据库管理员需要设定访问数据库的用户数或用户角色。打开如图,3-12,所示的“数据库属性”的“选项”标签页,单击“限制访问”下拉框。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,(,4,)限制访问数据库的用户,其中:,“,Multiple”,表示允许多个用户同时访问数据库;,“,Single”,表示只能有一个用户访问数据库,其他用户被中断访问;,“,Restricted”,表示只有,db_owner(,数据库所有者,),、,dbcreater(,数据库创建者,),和,sysadmin(,系统管理员,),三种角色的成员才能访问数据库。,注意:,SQL Server 2005,中定义了许多,数据库用户角色,,每种角色的用户具有特定的数据库操作权限。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.2.3,重命名用户数据库,数据库创建之后,,一般情况下不要更改数据库的名称,,因为许多应用程序可能已经使用了该数据库的名称。数据库名称更改之后,需要修改相应的应用程序。,如果确实需要更改数据库名称,可以,在“对象资源管理器”上直接改名,。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.2.3,重命名用户数据库,1,、使用“对象资源管理器”重命名数据库,在对象资源管理器上,右击要改名的用户数据库,在出现的快捷菜单中单击“重命名”,即可进行更名操作,。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.2.4,删除用户数据库,1,、使用“对象资源管理器”删除数据库,在“对象资源管理器”中,选择要删除的数据库,鼠标右击之并选择“删除”选项,,出现如图,3-13,所示的对话框。,注意:删除数据库一定要慎重,因为删除后,,与此数据库关联的数据库文件和事务日志文件都会被删除,存储在系统数据库中的关于该数据库的所有信息也会被删除,。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,删除数据库对话框,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.3,数据表的基本操作,在,SQL Server 2005,中,数据表是一种很重要的数据库对象,主要用来存储数据。在创建数据库之后,就可以创建数据表。,1.,创建数据表,2.,修改表结构,3.,删除数据表,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.3,数据表的基本操作,3.3.1,创建数据表,数据表由,结构,和,数据,两部分组成。,数据表的建立分两步:,首先,创建表结构,;,然后,输入数据,。,创建数据表的关键是定义表的结构,通常创建表之前的重要工作是,设计表结构,,即确定:,表的名字,、,表中,各个数据项的列名,、,数据类型和长度、是否为空值,等。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.3,数据表的基本操作,3.3.1,创建数据表,例如:,数据库,student,中涉及三个数据表,它们分别是用于存储学生信息的,student,表、用于存储课程信息的,course,表、用于存储学生成绩的,sc,表,其表结构分别见表,3-1,、,3-2,、,3-2,。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,例表,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.3,数据表的基本操作,3.3.1,创建数据表,1,、使用“对象资源管理器”创建表结构,【,例,3-7】,使用“对象资源管理器”创建,student,表结构。,(,1,)展开已经创建的,student,数据库,在“表”选项上右击鼠标,选择“新建表”命令。,(,2,)打开表设计窗口后,依次输入列名、数据类型、长度、允许空等属性,其中,sno,列要设置为主键,,右击该列,选择“设置主键”,如图,3-14,所示。,注意:长度的输入,可以,在所选数据类型后的括号内直接修改其中数值。,(,3,)完成后点击工具栏中的保存按钮,输入表名“,student”,,单击确定,如图,3-15,所示。,(,4,)完成后,在,student,数据库的“表”选项中,可以看到新建的,student,表。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,创建表的过程,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,创建表的过程,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,创建表完成后的界面,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.3,数据表的基本操作,3.3.1,创建数据表,3,、查看表结构,(,1,)使用“对象资源管理器”查看,在对象资源管理器中,鼠标,右击需要查看结构的表,,在弹出的快捷菜单中,选择“修改(设计)”命令,,打开数据表窗口,即可查看数据表结构信息。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.3,数据表的基本操作,3.3.2,修改表结构,数据表创建以后,在使用过程中可能需要对原先定义的表结构进行修改。,对表结构的修改包括:,更改表名,增加列,删除列,修改已有列的属性(列名、数据类型等),等等,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.3,数据表的基本操作,3.3.2,修改表结构,1,、使用“对象资源管理器”修改表结构,SQL Server,允许修改表的名字。,但当表名改变后,与此相关的某些对象,(,如视图、存储过程等,),将无效,因为它们都与表名有关。,建议一般不要随便更改已有的表名,,特别是对那些已经定义了视图等对象的表。,修改表名,只需鼠标右击相应的表,在快捷菜单中选择“重命名”选项,接着在表名的位置上输入新的表名后回车,即可完成更改表名的操作。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.3,数据表的基本操作,3.3.2,修改表结构,1,、使用“对象资源管理器”修改表结构,当表中已有记录后,不要轻易修改表的结构,特别是修改列的数据类型,以免造成错误。,例如,表中某列原来的数据类型是,decimal,型,如果将它改为,int,型,那么表中原有的记录值将丢掉小数部分,从而引起数值错误。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.3,数据表的基本操作,3.3.2,修改表结构,1,、使用“对象资源管理器”修改表结构,【,例,3-11】,给,student,表增加一列,名为,sbirthday,,即出生日期,日期类型,允许空。,具体操作步骤如下:,(,1,)展开,student,数据库,右击,student,表,在快捷菜单中选择“修改(,设计,)”选项。,(,2,)打开表设计器,增加一列,如图,3-18,。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,修改表结构界面(,1,),高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,修改表结构界面(,2,),高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,修改表结构界面(,3,),高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,修改表结构界面(,4,),高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.3,数据表的基本操作,3.3.3,删除数据表,1,、使用“对象资源管理器”删除数据表,【,例,3-15】,删除,student,数据库中的,scls,表(假设已建立)。,具体操作如下:,(,1,)展开,student,数据库,,鼠标,右击,scls,表,在快捷菜单中选择“删除”选项。,(,2,)打开“删除对象”对话框,单击“确定”,如图,3-19,,删除,scls,表。,(,3,)展开,student,数据库“表”选项,,scls,表被删除。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,删除数据表,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,删除数据表,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.4,表数据的基本操作,数据表由两部分组成:,表结构,和,表数据,。,在创建数据表时也要分两步完成,首先建立表结构,然后添加表数据(即记录)。,当两者都建立之后,一个完整的数据表就建立了。,表结构可以修改,表数据在使用过程中也会随时需要进行修改,包括,添加、更新或删除,。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.4,表数据的基本操作,3.4.1,添加记录,student,数据库中三个表的数据见表,3-4,、,3-5,、,3-6,。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,例题数据表的数据,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.4,表数据的基本操作,3.4.1,添加记录,1,、使用“对象资源管理器”添加记录,【,例,3-17】,给,student,表输入数据。,具体步骤如下,(,1,)展开,student,数据库,右击,student,表,在快捷菜单中选择“,打开表,”选项,如图,3-20,。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.4,表数据的基本操作,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.4,表数据的基本操作,(,2,)打开,student,表,依次输入各记录值,如图,3-21,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,输入数据后的三个数据表,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,添加记录,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.4,表数据的基本操作,3.4.1,添加记录,3,、添加记录的注意事项,在向表中添加记录时,无论使用“对象资源管理器”,还是使用,T-SQL,语句,都应注意以下几个问题:,(,1,)表中数据的类型、长度、允许空等属性必须与定义表结构时一致。如:,student,表的,sbirthday,列是,datetime,类型,应按如“,2000-2-6”,的格式输入,这样系统才会接受,否则将出现“类型不一致”的提示。,course,表的,cno,列长度是,3,个字节,如果输入超过此长度,如“,00000000001”,,则会出现“错误”的提示。,course,表中的,pre_cno,列允许空,则可以不输入数据,如第,1,个记录和第,6,个记录就没有提供,pre_cno,列的值;有些不允许为空的列则必须输入数据。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.4,表数据的基本操作,3.4.1,添加记录,(,2,)主键列的数据不能有重复。,如:,studeng,表的,sno,列为主键,各记录中的,sno,不能有重复数据,否则会出现“,违反了,PRIMARY KEY,约束,”的提示。,sc,表的,sno,列和,cno,列一起做为主键,各记录中的这两列不能同时相同,但一列相同、一列不同可以。,(,3,)某些列要遵守其约束的规定。,如:,sc,表的,grade,列要遵守,CHECK,约束,即该列的数值必须大于,0,,否则将会出现“,违反了,CHECK,约束,”的提示。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.4,表数据的基本操作,3.4.1,添加记录,(,4,)外键列中的数据必须是其参照表、参照列中已有的数据,因此输入数据时,应先输入其参照表。,如:,sc,表的,sno,列、,cno,列是外键,参照表、列分别是,student,表的,sno,列和,course,表的,cno,列。,sc,表的,sno,列中的数据必须都是,student,表的,sno,列中已有的数据,它的,cno,列中的数据必须都是,course,表的,cno,列中已有的数据。如果输入其它数据,将会出现“,FOREIGN KEY,约束冲突,”的提示。如图,3-23,。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.4,表数据的基本操作,3.4.1,添加记录,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,student,表中没有,2005001,这个学号,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.4,表数据的基本操作,3.4.1,添加记录,显然,在这三个表输入数据时,应先输入,student,表和,course,表的数据,再输入,sc,表的数据。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.4,表数据的基本操作,3.4.2,修改记录,1,、使用“对象资源管理器”修改记录,右击需要修改数据的表,在快捷菜单中选择“打开表”选项,打开表数据编辑器,直接修改即可。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.4,表数据的基本操作,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.4,表数据的基本操作,3.4.3,删除记录,1,、使用“对象资源管理器”删除记录,【,例,3-23】,删除,sc_2008002,表中的第,2,条纪录。,具体步骤如下:,(,1,)展开,student,数据库,右击,sc_2008002,表,在快捷菜单中选择“打开表”选项。,(,2,)打开表数据编辑器,单击第,2,条记录最左边方框,使整个记录呈被选中状态(淡蓝色)。,(,3,)右击被选中的第,2,条记录,在快捷菜单中选择“删除”选项,如图,3-24,所示。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,删除记录,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.4,表数据的基本操作,3.4.3,删除记录,(,4,)弹出删除记录的提示信息对话框,如图,3-25,所示,单击“是”按钮,即可删除该记录。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.5,数据完整性的实现,数据完整性,,又称数据库完整性,是指数据的正确性、有效性和相容性,目的是,防止错误数据进入数据库,。,所谓,正确性,是指数据的合法性,如日期型数据中“月”只能从,1,到,12,,否则就是非法数据;,所谓,有效性,是指数据是否属于所定义的有效范围,如人的年龄不能是负数;性别只能是男或女等;,所谓,相容性,是指表示同一事实的两个数据必须相同,不一致就是不相容。,如表示年龄一个人的用数值“,32”,表示,另一个人用字符“三十二”表示,这样用来表示年龄的数据就不相容了。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.5,数据完整性的实现,数据库是否具备完整性关系到数据库系统能否真实地反映现实世界,因此维护数据库的完整性是非常重要的。,在评价数据库的设计时,数据完整性的设计是数据库设计好坏的一项重要指标。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.5,数据完整性的实现,3.5.1,数据完整性,在,Microsoft SQL Server 2005,系统中,有,3,种数据完整性类型:,实体完整性,参照完整性,域完整性,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.5,数据完整性的实现,3.5.1,数据完整性,1,、实体完整性,实体完整性,,也可以称为行完整性,要求表中的所有行有一个唯一的标识符,,这种标识符一般称为,主键值,。,例如,对于一个学校的所有学生来说,学号是唯一的,利用学号可以唯一地确定某个同学,因此可以把学号作为主键对待。,主键值是否能够被修改或表中的数据是否能够被全部删除都要依赖于主键表和其他表之间要求的完整性,(,外键约束,,参照完整性,),。,在,SQL Server,中,利用,PRIMARY KEY,约束、,UNIQUE,约束,实现实体完整性。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.5,数据完整性的实现,3.5.1,数据完整性,2,、参照完整性约束,参照完整性,是保证参照表(外键所在的表)与被参照表(主键所在的表)中数据的一致性。,如果被参照表中的一行被一个外键所参考,那么这一行数据便不能直接被删除,用户也不能直接修改主键值。,例如,在,student,数据库中,,sc,表的,sno,被定义为外键,其参照的表及列是,student,表的,sno,列,则,student,表中的,sno,列值就不能随意删除和修改。,在,SQL Server,中,利用,FOREIGN KEY,约束,实现参照完整性。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.5,数据完整性的实现,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,学生,学生选课,课程,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.5,数据完整性的实现,3.5.1,数据完整性,3,、域完整性,域完整性,,也可以称为,列完整性,,指定一个数据集对某一个列是否有效和确定是否允许空值。,域完整性通常使用,有效性检查,来实现,还可以通过,限制数据类型,、,格式,或者,可能的取值范围,来实现。,例如,设置学生入校的日期大于他的出生日期;在性别列中,限制其取值范围为“男”和“女”,这样就不能在该列输入其他一些无效的值。,最简单的域完整性方法是数据类型,例如,在出生日期列中定义该列的数据类型是,DATETIME,,则该列就不会出现其他一些不符合日期格式的数据。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.5,数据完整性的实现,3.5.1,数据完整性,3,、域完整性,在,SQL Server,中,利用,NULL | NOT NULL,约束,、,CHECK,约束,、,默认,、,规则,来实现。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.5,数据完整性的实现,SQL Server,提供的实现数据库完整性的这些方法又可以归纳为,约束、默认、规则,三种数据库对象。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.5,数据完整性的实现,3.5.2,约束,约束,是通过,限制,列中数据,、,行中数据,和,表之间数据,来保证数据完整性的非常有效的方法。,约束可以确保把有效的数据输入到列中,并维护表和表之间的特定关系。,定义约束时,,可以把约束放在一列上,也可以把约束放在多个列上,。,如果把约束放在一个列上,则该约束称为,列级约束,,它只能由约束所在的列引用。,如果把约束放在多个列上,则把该约束称为,表级约束,,这时可以由这多个列来引用该约束。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.5,数据完整性的实现,3.5.2,约束,当创建约束时,可以指定约束的名称。否则,,Microsoft SQL Server,系统将提供一个复杂的、系统,自动生成,的名称。,对于一个数据库来说,,约束名称必须是唯一的,。,SQL Server,提供以下几种约束来实现数据完整性:,PRIMARY KEY,约束,FOREIGN KEY,约束,NULL | NOT NULL,约束,UNIQUE,约束,CHECK,约束,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.5,数据完整性的实现,3.5.2,约束,1,、,PRIMARY KEY,约束,PRIMARY KEY,约束,,也称主键约束,作为一个表的主属性,可以惟一标识表中的记录。,在输入数据时,主键列不能为空且不能有重复值。,每个表,(都应该有且),只能有一个主键。,该约束用于强制,实体完整性,。,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,高等教育“十一五”国家级规划教材,数据库与程序设计,山东大学出版社,3.5,数据完整性的实现,3.5.2,约束,1,、,PRIMARY KEY,约束,(,1,)使用“对象资源管理器”管理,PRIMARY KEY,约束,设置,PRIMARY KEY,约束,选中需要管理的表,右击之,在快捷菜单中选择“,设计,(,修改,),”选项;,打开该表设计器,选中需要设置为主键的列,右击之,在快捷菜单中选择“,设置主键,”或单击工
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!