1、项目三:数据库管理 创建Student数据库修改Student数据库删除学生数据库任务一任务二任务三数据完整性 3.1 任务1:创建Student数据库任务描述:任务描述:创建名为Student的数据库,包含一个主文件和一个事务日志文件,主文件的逻辑名为Student,物理文件名为Student.mdf,初始大小为10MB,最大尺寸为无限大,增长速度为10%,事务日志文件的逻辑名为Student_log,物理文件名为Student_log.ldf,初始大小为1MB,最大容量为5MB,每次的增长量为1MB。3.1.1相关知识相关知识创建Student数据库SQL Server 2008将数据库映
2、射为一组操作系统文件,数据和日志信息在不同的文件中,并且各文件仅在一个数据库中使用。1.数据库文件数据库文件(1)主数据文件(Primary DataBase File)数据库文件是存放数据库数据和数据库对象的文件,每个数据库至少包含两个相关联的存储文件,主数据文件和事务日志文件。主数据文件主要存储数据库的启动信息,并指向数据库的其它文件,一个数据库有且只有一个主数据文件,主数据文件的扩展名为.mdf。(2)次要数据文件(Secondary DataBase File)除了主数据文件以外的所有其它数据文件称为次要数据文件(辅助数据文件),一个数据库可以没有次要数据文件,也可以有多个次要数据文件
3、,可以根据需要建立多个次要文件,这样可以实现将数据分散到不同的磁盘中,次要数据文件的扩展名为.ndf。(3)事务日志文件(Transaction Log File)包含用于恢复数据库的所有日志信息。每个数据库必须至少有一个事务日志文件,也可以有多个。事务日志文件的扩展名为.ldf。相关相关知识知识创建Student数据库(4)逻辑文件名和物理文件名SQL Server文件有两个名称,即逻辑文件名和物理文件名。为了在逻辑结构中引用物理文件,SQL Server在这些物理文件起了逻辑名称,数据库创建后,T-SQL命令就是通过引用逻辑名称来实现对数据库的操作。默认名称与数据库名称相同,也可以修改,但
4、是逻辑名称是唯一的。物理文件名是文件存储在磁盘上的文件名,包括文件的具体存放目录。(5)数据库文件组(DataBase File Group)为了便于分配和管理,SQL Server允许将多个文件归纳为一组,并赋予一个名称,这就是文件组。文件组分为主文件组和用户定义文件组,主文件组包含主数据文件和任何没有明确分配给其它文件组的其它文件,系统表的所有页均分配在主文件组中。用户定义文件组是通过在create database或alter database语句中使用filegroup关键字指定的任何文件组。日志文件不包含在文件组内。(6)文件大小数据库文件所占磁盘空间的大小,单位为MB,默认大小为3
5、MB,当创建数据库时可适当设置初始大小,当数据总量超过最大大小时,可以设置根据文件的大小为自动增长,也可以设置数据文件的最大值。相关相关知识知识创建Student数据库2.系统数据库系统数据库在SQL Server 2008中,系统数据库是SQL Server 2008自带的数据库,分别是master、model、msdb、tempdb和resource五个系统数据库,在创建任何数据库之前,利用Microsoft SQL Server Management Studio工具,可以看到前四个系统数据库,resource数据库不显示在“对象资源管理器”中,因为它在sys框架中。(1)master数
6、据库master数据库记录SQL Server2008实例的所有系统级信息,master数据库记录了SQL Server的初始化信息,记录了实例范围的元数据、端点、链接服务器和系统配置设置,记录了其它所有数据库是否存在以及这些数据库文件的位置等信息,如果master数据库不可用,会导致SQL Server无法启动。(2)model数据库model数据库为SQL Server 2008实例上创建的所有数据库的模板,对model数据库的修改将应用于此后创建的所有数据库。当创建数据库时,将通过复制model数据库的内容来创建数据库,新创建的数据库与model数据库完全一样。(3)msdb数据库msd
7、b数据库用于SQL Server代理计划警报和作业等。相关相关知识知识创建Student数据库(4)tempdb数据库tempdb数据库用于存放所有连接系统的用户使用的全局资源和SQL Server产生的临时表格、临时存储过程等,每次启动SQL Server时会重新创建tempdb,在断开连接时,会自动删除临时表和存储过程,并且在系统关闭后没有活动连接。(5)resource数据库resource数据库是只读数据库,包含SQL Server 2008中的所有系统对象。系统对象在物理上保留在resource数据库中,但是在逻辑上显示在每个数据库的sys架构中。3.数据库对象数据库对象SQL Se
8、rver 2008数据库中的数据在逻辑上被组织成一系列的对象,当用户连接到数据库后,看到的是数据库对象,而不是数据库文件。SQL Server 2008数据库的对象主要包括以下几种:(1)表:用于存储数据,由行和列组成,每一列代表一个相同类型的数据。(2)记录:表中的一行数据就是一条记录。(3)主键:表中一列或多列的组合,它的值能唯一的确定一条记录。相关相关知识知识创建Student数据库(4)外键:表中一列或多列的组合,它同时存在于两个表中,假设为A表和B表,这一列或者多列的组合是A表的主键,但不是B表的主键,则称这一列或者列的组合是B表相对于A表的外键。外键主要用于实现表与表之间的参照完整
9、性约束。(5)视图:视图是虚表,是查看一个或多个表的一种方式。(6)索引:表中一列或若干列值的集合和相应的执行表中物理标识的数据页的逻辑指针列表,使用索引可以加快数据的检索速度。(7)约束:实现数据完整性和一致性的方法。(8)默认值:在数据表中输入数据时,如果没有指定具体值的字段,数据库会自动插入默认的数据。(9)规则:用于限制表中列的取值范围,实现表中数据完整性的一种方式。(10)存储过程:经过编译的可重复使用的T-SQL语句的集合,因为是经过编译后存储到数据库中,因此运行速度比执行相同的SQL语句快。(11)触发器:是一种特殊的存储过程,与某种操作关联,当操作影响到其保护的数据时,会被触发
10、,并自动执行。相关相关知识知识创建Student数据库4.数据库创建命令数据库创建命令CREATE DATABASE使用CREATE DATABASE命令创建数据库,基本语法如下:CREATE DATABASE database_name ON ,n ,n LOG ON,n COLLATE collation_name其中定义为:PRIMARY(NAME=logical_file_name,FILENAME=OS_file_name,SIZE=size,MAXSIZE=max_size|UNLIMITED,FILEGROWTH=growth_increment),.n其中定义为:FILEGRO
11、UP filegroup_name,n相关相关知识知识创建Student数据库语法中的符号及参数说明如下:(1):可选语法选项,省略时参数为默认值。(2),n:前面的内容可以重复多次。(3):必选项。(4):在实际的语句中要用相应的内容替代。(5)大写字母:该文字为T-SQL关键字。(6)小写字母:该文字为用户提供的T-SQL参数。(7)database_name:用户创建的数据库名称。(8)ON:指定显式定义用来存储数据库数据部分的数据文件信息。(9)LOG ON:指定日志文件的明确定义。(10)COLLATE collation_name:指定数据库默认排序规则。(11):指定文件的属性。
12、(12)NAME logical_file_name:数据文件的逻辑文件名。(13)FILENAME OS_file_name:数据文件的物理名称,包括物理文件的路径和文件名。相关相关知识知识创建Student数据库(14)SIZE size:文件的初始大小,指定为整数,单位可以使用KB、MB、GB或TB后缀,默认值为MB。(15)MAXSIZE max_size|UNLIMITED:文件可以增长到的最大值,单位与文件初始大小的要求相同,如果没有指定或者写UNLIMITED,文件会增长到磁盘空间变满为止。(16)FILEGROWTH growth_increment:定义文件的自动增长。(17
13、)filegroup:定义对文件组的控制。3.1.2任务任务实施实施创建数据库步骤1:在桌面上选择“开始”|“所有程序”|Microsoft SQL Server 2008|SQL Server Managerment Studio,打开SQL Server Managerment Studio窗口,设置服务器类型、服务器名称、身份验证、用户名和密码,单击“连接”按钮。步骤2:在“对象资源管理器”窗口里选择“数据库”节点并右击,在弹出的快捷菜单中选择“新建数据库”命令,如图3-1所示。步骤3:弹出“新建数据库窗口”,窗口由“常规”、“选项”和“文件组”三个选项组成。在“数据库名称”文本框中输入
14、“Student”,并重新设置文件路径为F:/data,如图3-2所示。方法方法1.用用SSMS创建创建Student数据库数据库操作图示操作图示操作图示操作图示图3-1“对象资源管理器”窗口图3-2“新建数据库”窗口3.1.2任务任务实施实施创建数据库步骤4:单击“自动增长”列下的按钮,弹出如图3-3所示窗口,设置主数据文件最大尺寸为不限制文件增长,增长速度为10%,按照同样的方法设置事务日志文件的最大容量为5MB,每次的增长量为1MB,设置完成后如图3-4所示。步骤5:单击“确定”按钮,完成Student数据库的创建。方法方法1.用用SSMS创建创建Student数据库数据库操作图示操作图
15、示图3-3“更改Student的自动增长设置”窗口图3-4 设置完成的“新建数据库”窗口3.1.2任务任务实施实施创建数据库步骤1:进入SSMS管理界面后,在工具栏中单击“新建查询”按钮,打开“查询编辑器”窗口,如图3-5所示 方法方法2.用用SQL命令创建命令创建student数据库数据库操作图示操作图示图3-5 查询编辑器窗口3.1.2任务任务实施实施创建数据库步骤2:编写SQL命令,在查询编辑器窗口输入建立Student数据库命令,代码如下:CREATE DATABASE StudentON(NAME=Student,FILENAME=f:dataStudent.mdf,SIZE=10M
16、B,MAXSIZE=unlimited,FILEGROWTH=10%)LOG ON(NAME=Student_log,FILENAME=f:dataStudent_log.ldf,SIZE=1MB,MAXSIZE=5MB,FILEGROWTH=1MB)3.1.2任务任务实施实施创建数据库步骤3:单击菜单栏的“查询”“执行”命令,或者单击工具栏的“执行”按钮,或者按快捷键F5,执行命令后完成数据的创建,结果如图3-6所示,右击“数据库”节点选择“刷新”命令,可看到Student数据库节点,说明Student数据库成功创建。操作图示操作图示图3-6 建立数据库窗口3.2 任务2:修改Student
17、数据库用T-SQL命令将Student数据库重命名为“学生数据库”。3.2.1 相关知识相关知识修改Student数据库创建数据库后,就可以使用数据库了,通常有打开、查看、修改和删除等几种方式对数据库进行管理和维护。1打开数据库打开数据库T-SQL命令打开并切换数据库的语法格式为:use database_namedatabase_name:为要打开并切换的数据库名称。例如:use Student 打开并切换到Student数据库。2查看数据库信息查看数据库信息(1)使用SSMS查看数据库信息在SSMS中,右击数据库名称,在弹出的快捷菜单中选择“属性”命令,弹出如图3-7所示的数据库属性窗口,
18、该窗口显示了数据库上次备份日期、数据库日志上次备份日期、名称、状态、所有者等信息。图3-7“数据库属性-student”窗口3.2.1 相关知识相关知识修改Student数据库单击“文件”、“文件组”、“选项”等选项,可以查看数据库文件、文件组、选项等属性。(2)使用T-SQL语句查看数据库信息使用系统存储过程sp_helpdb也可以查看数据库信息,语法格式如下:execute sp_helpdb 数据库名例如:sp_helpdb Student该命令显示的为Student数据库的相关信息,如果省略Student,则会显示所有数据库的信息。3修改数据库修改数据库信息信息(1)SSMS修改数据库
19、配置操作与用SSMS方式查看数据库过程类似,修改参数类似于通过SSMS方式创建数据库,不再赘述。3.2.1 相关知识相关知识修改Student数据库(2)T_SQL命令修改数据库配置ALETER DATABASE database_nameADD FILE,n TO FILEGROUP filegroup_name|ADD LOG FILE,n|REMOVE FILE logical_file_name|ADD FILEGROUP filegroup_name|REMOVE FILEGROUP filegroup_name|MODIFY FILE|MODIFY NAME=new_databas
20、e_name|MODIFYFILEGROUP filegroup_namefilegroup_property|NAME=new_filegroup_name(1)ADD FILE,n TO FILEGROUP filegroup_name:把新数据文件添加到指定的文件组中。3.2.1 相关知识相关知识修改Student数据库(2)ADD LOG FILE,n:增加日志文件。(3)REMOVE FILE logical_file_name:从数据库系统表中删除文件描述和物理文件。(4)ADD FILEGROUP filegroup_name:增加一个文件组。(5)REMOVE FILEGROU
21、P filegroup_name:删除一个文件组。(6)MODIFY FILE:修改物理文件。(7)MODIFY NAME=new_database_name:修改数据库的名称。(8)MODIFYFILEGROUP filegroup_name:修改文件组的属性。3.2.2任务任务实施实施修改数据库步骤1:进入SSMS管理界面后,在工具栏中单击“新建查询”按钮,打开“查询编辑器”窗口。步骤2:编写SQL命令,在查询编辑器窗口输入T-SQL命令,代码如下:ALTER DATABASE StudentMODIFY NAME=学生数据库步骤3:单击菜单栏的“查询”“执行”命令,或者单击工具栏的“执行
22、”按钮,或者按快捷键F5,执行命令后完成数据的创建,结果如图3-8所示,右击“数据库”节点选择“刷新”命令,可看到“Student”数据库名称改变为“学生数据库”,说明Student数据库被重命名。操作图示操作图示图3-8 修改数据库名称窗口3.3 任务3:删除学生数据库3.3.1相关知识相关知识删除数据库如果数据库不再需要了,则应该删除。删除数据库表示删除数据库中的所有对象,包括表、视图、约束、索引、存储过程和触发器等,如果数据库没有备份,则不可以恢复。在删除数据库时要根据用户的权限删除,而且不能删除当前正在使用的数据库,也不能删除系统数据库。删除数据库的命令格式如下:DROP DATABA
23、SE database_name,n3.3.2 任务实施任务实施删除数据库方法方法1.在在SSMS中删除数据库中删除数据库步骤1:在SSMS中,右击要删除的学生数据库,在弹出的快捷菜单中选择“删除”菜单项,弹出如图3-9所示的窗口。步骤2:单击“确定”按钮,完成学生数据库的删除。操作图示操作图示图3-9 修改数据库名称窗口3.3.2 任务实施任务实施删除数据库方法方法2.T-SQL语句删除数据库语句删除数据库步骤1:进入SSMS管理界面后,在工具栏中单击“新建查询”按钮,打开“查询编辑器”窗口。步骤2:编写SQL命令,在查询编辑器窗口输入T-SQL命令,代码如下:DROP DATABASE 学
24、生数据库步骤3:单击菜单栏的“查询”“执行”命令,或者单击工具栏的“执行”按钮,或者按快捷键F5,执行命令后完成数据的创建,结果如图3-10所示,右击“数据库”节点选择“刷新”命令,学生数据库被成功删除。操作图示操作图示图3-10“删除学生数据库”命令窗口项目小结项目小结本项目主要讲述了SQL Server 2008数据库的基本概念和基本操作,SQL Server 2008的数据库是由多个文件组成的,每个文件对应着两个名称:逻辑文件名和物理文件名。物理文件名用于在磁盘上存储文件,而逻辑文件名用于T-SQL语句中。数据库的操作主要有创建数据库、打开数据库、查看数据库、修改数据库、删除数据库等,每
25、种操作均可以用两种方式实现,一种是使用SSMS,一种是使用T-SQL语句。T-SQL命令总结如下:CREATE DATABASE:创建数据库USE DATABASE:打开数据库ALTER DATABASE:修改数据库DROP DATABASE:删除数据库 实 训 项 目综合实训综合实训1:创建:创建library数据库数据库实训项目实实训训目标目标:掌握数据库的创建。实训实训要求要求:创建名为library的数据库,包含一个主文件和一个事务日志文件,主文件的逻辑名为library,物理文件名为library.mdf,初始大小为5MB,最大尺寸为无限大,增长速度为10%,事务日志文件的逻辑名为library_log,物理文件名为library_log.ldf,初始大小为3MB,最大容量为10MB,每次的增长量为1MB。THANKS