资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,第,2,章 数据库创建,2.1 SQL Server,数据库基本概念,2.2,界面方式创建数据库,2.3,命令方式创建数据库,2.1 SQL Server,数据库基本概念,2.1.1,逻辑数据库,SQL Server,数据库是存储数据的容器,是一个存放数据的表和支持这些数据的存储、检索、安全性和完整性的逻辑成分所组成的集合。用户观点将数据库称为逻辑数据库,组成数据库的逻辑成分称为数据库对象。,SQL Server 2005,的数据库对象主要包括表、视图、索引、存储过程、触发器和约束等。,(1),完全限定名。在,SQL Server 2005,中,完全限定名是对象的全名,包括,4,部分:服务器名、数据库名、数据库架构名和对象名,其格式为:,server.database.scheme.object,2.1.1,逻辑数据库,(2),部分限定名。在使用,T-SQL,编程时,使用全名往往比较烦琐且没有必要,所以常省略全名中的某些部分,对象全名的,4,个部分中的前,3,个部分均可以被省略,当省略中间的部分时,圆点符“,.,”不可省略。把只包含对象完全限定名中的一部分的对象名称为部分限定名。当用户使用对象的部分限定名时,,SQL Server,可以根据系统的当前工作环境确定对象名称中省略的部分。,在部分限定名中,未指出的部分使用以下默认值:,服务器:默认为本地服务器。,数据库:默认为当前数据库。,数据库架构名:默认为,dbo,。,2.1.2,物理数据库,1,页和区,SQL Server 2005,中有两个主要的数据存储单位:页和区。,“页”是,SQL Server 2005,中用于数据存储的最基本单位。,“区”是用于管理空间的基本单位。,2,数据库文件,SQL Server 2005,所使用的文件包括,3,类:,(1),主数据文件。,(2),次要数据文件。,(3),日志文件。,3,文件组,在,SQL Server 2005,中有两类文件组:,(1),主文件组。,(2),用户定义文件组。,一个文件只能存在于一个文件组中,一个文件组也只能被一个数据库使用;,日志文件是独立的,它不能作为任何文件组的成员。,数据库文件,主要数据文件(必有、唯一),数据库 次要数据文件(可有、一个或多个),日志文件(必有、一个或多个),数据库,数据(文件),.,mdf,或,.,ndf,日志(文件),.,ldf,数据文件,2.1.3,系统数据库和用户数据库,(1)master,数据库包含了,SQL Server,诸如登录账号、系统配置、数据库位置及数据库错误信息等,用于控制用户数据库和,SQL Server,的运行。,(2)model,数据库为新创建的数据库提供模板。,(3),msdb,数据库为“,SQL Server Agent,”调度信息和作业记录提供存储空间。,(4),tempdb,数据库为临时表和临时存储过程提供存储空间,所有与系统连接的用户的临时表和临时存储过程都存储于该数据库中。,2.2,界面方式创建数据库,2.2.1,数据库的创建,下面以创建学生成绩管理系统的数据库(命名为,PXSCJ,)为例说明使用“,SQL Server Management Studio,”窗口图形化向导创建数据库的过程。,【,例,2.1】,创建数据库,PXSCJ,,数据文件和日志文件的属性按默认值设置。,创建该数据库的主要过程为:,第,1,步:以系统管理员身份登录计算机,在桌面上单击“开始”“所有程序”“,Microsoft SQL Server 2005,”选择并启动“,SQL Server Management Studio,”。如图,2.1,所示,使用默认的系统配置连接到数据库服务器。,2.2.1,数据库的创建,第,2,步:选择“对象资源管理器”中的“数据库”,右击鼠标,在弹出的快捷菜单中选择“新建数据库”菜单项,打开“新建数据库”窗口。,第,3,步:“新建数据库”窗口的左上方共有三个选项卡:“常规”、“选项”和“文件组”。这里只配置“常规”选项卡,其他选项卡使用系统默认设置。,路径要事先创建好,要大于或等于,model,数据库的容量,2.2.1,数据库的创建,到这里数据库,PXSCJ,已经创建完成了。此时,可以在“对象资源管理器”窗口的“数据库”目录下找到该数据库所对应的图标,如图所示。,2.2.2,数据库的修改和删除,1,数据库的修改,第,1,步:选择需要进行修改的数据库,PXSCJ,,单击鼠标右键,在出现的快捷菜单中选择“属性”菜单项,如图,2.5,所示。,第,2,步:选择“属性”菜单项后,出现如图,2.6,所示的“数据库属性,-PXSCJ,”窗口。从图中的“选择页”列表中可以看出,它包括,8,个选项卡。,2.2.2,数据库的修改和删除,(1),改变数据文件的大小和增长方式。,2.2.2,数据库的修改和删除,(2),增加或删除数据文件。,【,例,2.2】,在,PXSCJ,数据库中增加数据文件,PXSCJ_2,,其属性均取系统默认值。,2.2.2,数据库的修改和删除,(3),增加或删除文件组。,【,例,2.3】,设要在数据库,PXSCJ,中增加一个名为,FGroup,的文件组。,(4),数据库的重命名。,2.2.2,数据库的修改和删除,2,数据库系统的删除,数据库系统在长时间使用之后,系统的资源消耗加剧,导致运行效率下降,因此,DBA,需要适时地对数据库系统进行一定的调整。,【,例,2.4】,删除,PXSCJ,数据库。,2.3,命令方式创建数据库,2.3.1,创建数据库,使用“,CREATE DATABASE,”命令创建数据库,创建前要确保用户具有创建数据库的权限。,语法格式:,CREATE DATABASE,ON/*,指定数据库文件和文件组属性,*,/,PRIMARY,.n ,.n ,LOG ON,.n /*,指定日志文件属性,*,/,COLLATE ,;,2.3.1,创建数据库,其中,,和,的定义格式如下:,:=,/*,指定数据库文件的属性,*,/,(,NAME=,FILENAME=,SIZE=KB|MB|GB|TB ,MAXSIZE=KB|MB|GB|TB|UNLIMITED ,FILEGROWTH=KB|MB|GB|TB|%,),.n,:=,/*,指定数据库文件组的属性,*,/,FILEGROUP DEFAULT,.n,2.3.1,创建数据库,在解释语法格式之前,应先了解本书,Transact-SQL,语法格式使用的约定。如表,2.1,所示,表,2.1,对,Transact-SQL,语法格式的约定进行了说明。,约,定,用,于,UPPERCASE,(大写),Transact-SQL,关键字,|,分隔括号或大括号中的语法项,只能选择其中一项,可选语法项,不要输入方括号,必选语法项,不要输入大括号,.n,指示前面的项可以重复,n,次,每一项由逗号分隔,.n,指示前面的项可以重复,n,次,每一项由空格分隔,;,可选的,Transact-SQL,语句终止符,不要输入方括号,编写,T-SQL,语句时设置的值,(斜体,下画线),语法块的名称,此约定用于对可在语句中的多个位置使用的过长语法段或语法单元进行分组和标记,可使用的语法块的每个位置由括在尖括号内的标签指示:,2.3.1,创建数据库,【,例,2.5】,创建一个名为,TEST1,的数据库,其初始大小为,5MB,,最大不限制,允许数据库自动增长,增长方式是按,10%,比例增长。日志文件初始为,2MB,,最大可增长到,5MB,,按,1MB,增长。,在“,SQL Server Management Studio,”窗口中单击“新建查询”按钮新建一个查询窗口,如图,2.12,所示。,2.3.1,创建数据库,在“查询分析器”窗口中输入如下,Transact-SQL,语句:,CREATE DATABASE TEST1,ON,(,NAME=TEST1_DATA,FILENAME=C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLDataTEST1_DATA.mdf,SIZE=5MB,FILEGROWTH=10%,),LOG ON,(,NAME=TEST1_log,FILENAME=C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLDataTEST1_log.ldf,SIZE=2MB,MAXSIZE=5MB,FILEGROWTH=1MB,),2.3.1,创建数据库,单击“执行”按钮。如图,2.13,所示,,CREATE DATABASE,命令执行时,在结果窗口中将显示命令执行的进展情况。,2.3.1,创建数据库,【,例,2.6】,创建一个名为,TEST2,的数据库,它有两个数据文件,其中主数据文件为,20MB,,不限制增长,按,10%,增长。,1,个辅助数据文件为,20MB,,最大不限,按,10%,增长;有,1,个日志文件,大小为,50MB,,最大为,100MB,,按,10MB,增长。在“查询分析器”窗口中输入如下,Transact-SQL,语句并执行,。,【,例,2.7】,创建一个具有,2,个文件组的数据库,TEST3,。要求:,(1),主文件组包括文件,TEST3_dat1,,文件初始大小为,20MB,,最大为,60MB,,按,5MB,增长;,(2),有,1,个文件组名为,TEST3Group1,,包括文件,TEST3_dat2,,文件初始大小为,10MB,,最大为,30MB,,按,10%,增长;,(3),数据库只有一个日志文件,初始大小为,20MB,,最大为,50MB,,按,5MB,增长。,新建一个查询,在“查询分析器”窗口中输入如下,Transact-SQL,语句并执行,。,2.3.2,修改数据库,使用“,ALTER DATABASE,”命令可以对数据库进行修改。语法格式:,ALTER DATABASE,ADD FILE,n TO FILEGROUP /*,在文件组中增加数据文件,*,/,|ADD LOG FILE,n /*,增加日志文件,*,/,|REMOVE FILE /*,删除数据文件,*,/,|ADD FILEGROUP /*,增加文件组,*,/,|REMOVE FILEGROUP /*,删除文件组,*,/,|MODIFY FILE,/*,更改文件属性,*,/,|MODIFY NAME=/*,数据库更名,*,/,|MODIFY FILEGROUP NAME=/*,修改文件组,*,/,|SET ,.n /*,设置数据库属性,*,/,|COLLATE /*,指定数据库排序规则,*,/,;,2.3.2,修改数据库,【,例,2.8】,假设已经创建了例,2.5,中的数据库,TEST1,,它只有一个主数据文件,其逻辑文件名为,TEST1_DATA,,大小为,5MB,,最大为,50MB,,增长方式为按,10%,增长。,在“查询分析器”窗口中输入如下,Transact-SQL,语句:,-,修改数据文件的最大值和增长方式,ALTER DATABASE TEST1,MODIFY FILE,(,NAME=TEST1_DATA,MAXSIZE=100MB,/*,将主数据文件的最大大小改为,100MB*/,FILEGROWTH=5MB/*,将主数据文件的增长方式改为按,5MB,增长,*,/,),GO,2.3.2,修改数据库,【,例,2.9】,首先为数据库,TEST1,增加数据文件,TEST1BAK,,然后删除该数据文件。,在“查询分析器”窗口中输入如下,Transact-SQL,语句并执行:,ALTER DATABASE TEST1,ADD FILE,(,NAME=TEST1BAK,FILENAME=E:TEST1BAK.ndf,SIZE=10MB,MAXSIZE=50MB,FILEGROWTH=5%,),删除数据文件,TEST1BAK,的命令如下:,ALTER DATABASE TEST1,REMOVE FILE TEST1BAK,GO,2.3.2,修改数据库,【,例,2.10】,为数据库,TEST1,添加文件组,FGROUP,,并为此文件组添加两个大小均为,10MB,的数据文件。,在“查询分析器”窗口中输入如下,Transact-SQL,语句并执行,。,【,例,2.11】,从数据库中删除文件组,将例,2.10,中添加到,TEST1,数据库中的文件组,FGROUP,删除。,在“查询分析器”窗口中输入如下,Transact-SQL,语句并执行:,ALTER DATABASE TEST1,REMOVE FILE TEST1_DATA2,GO,ALTER DATABASE TEST1,REMOVE FILE TEST1_DATA3,GO,ALTER DATABASE TEST1,REMOVE FILEGROUP FGROUP,GO,2.3.2,修改数据库,【,例,2.12】,为数据库,TEST1,添加一个日志文件。,在“查询分析器”窗口中输入如下,Transact-SQL,语句并执行:,ALTER DATABASE TEST1,ADD LOG FILE,(,NAME=TEST1_LOG2,FILENAME=C:TEST1_Log2.ldf,SIZE=5MB,MAXSIZE=10 MB,FILEGROWTH=1MB,),GO,2.3.2,修改数据库,【,例,2.13】,从数据库,TEST1,中删除一个日志文件,将日志文件,TEST1_LOG2,删除。,在“查询分析器”窗口中输入如下,Transact-SQL,语句并执行:,-,删除日志文件,ALTER DATABASE TEST1,REMOVE FILE TEST1_LOG2,GO,-,重命名数据库名,ALTER DATABASE TEST1,MODIFY NAME=JUST_TEST,GO,2.3.3,删除数据库,删除数据库使用“,DROP DATABASE,”命令。语法格式:,DROP DATABASE,n;,其中,,database_name,是要删除的数据库名。例如,要删除数据库,TEST2,,使用命令:,DROP DATABASE TEST2,谢谢您的关注!,
展开阅读全文