当前位置:文档之家› SQL语句创建数据库及修改、删除数据库

SQL语句创建数据库及修改、删除数据库

1、使用SQL语句:CREATE DATABASE语句创建数据库CREATE DATABASE database_name[ON [PRIMARY] [<> [ ,...n][ , <> [ ,...n ] ][LOG ON { <> [ ,...n ] } ]<>::={(NAME=logical_ ,= 'os_'[ SIZE=size [KB|MB|GB|TB] ][ MAXSIZE={max_size [KB|MB|GB|TB] | UNLIMITED } ][[KB|MB|GB|TB|% ] ]) [ ,...n ]}<> ::={<> [ ,...n ]}T-SQL语法说明:●“[ ]”中的内容表示可以省略,省略时系统取默认值。

●“{ }[ ,…n ]”表示花括号中的内容可以重复书写n次,必须用逗号隔开。

●“|”表示相邻前后两项只能任取一项。

●一条语句可以分成多行书写,但多条语句不允许写在一行。

CREATE DATABASE 数据库名[ ON [PRIMARY]{ ( [NAME=数据文件的逻辑名称,]‘数据文件的物理名称’,[SIZE=数据文件的初始大小[ MB(默认) | KB | GB ] , ][MAXSIZE={ 数据文件的最大容量[ MB | KB | GB]|UNLIMITED(不受限制) } ,][数据文件的增长量[ MB | KB | GB | % ] ])} [ , …n ][ 文件组名{ ( [NAME=数据文件的逻辑名称,][‘数据文件的物理名称’, ][SIZE=数据文件的初始大小[ MB | KB | GB ] ,][MAXSIZE={ 数据文件的最大容量[ MB | KB | GB ]| UNLIMITED } ,][数据文件的增长量[ MB | KB | GB | % ] ])} [ , …n ]]LOG ON{ ( [NAME=事务日志文件的逻辑名称,][‘事务日志文件的物理名称’,][SIZE=事务日志文件的初始大小[MB | KB | GB ] ,] [MAXSIZE={ 事务日志文件的最大容量[ MB | KB | GB ]| UNLIMITED } ,][事务日志文件的增长量[ MB|KB|GB| % ]])} [ , …n ]]说明:●ON 表示需根据后面的参数创建该数据库。

●LOG ON 子句用于根据后面的参数创建该数据库的事务日志文件。

●PRIMARY指定后面定义的数据文件属于主文件组PRIMARY,也可以加入用户自己创建的文件组。

●NAME=‘数据文件的逻辑名称’:是该文件在系统中使用的标识名称,相当于别名。

●‘数据文件的物理名称’:指定文件的实际名称,包括路径和后缀。

●UNLIMITED 表示在磁盘容量允许情况下不受限制。

●文件容量默认单位为MB字节,也可以使用KB单位。

例题一:用T-SQL语句在C:\DATA\文件夹中创建一个教师信息数据库teacher,该数据库包含:1、一个主数据文件逻辑名‘teacherdata1 ’,物理名‘C:\DATA\tdata1.mdf ’,初始容量1MB,最大容量10MB,每次增长量为15%。

2、一个辅助数据文件逻辑名‘teacherdata2 ’物理名‘C:\DATA\tdata2.ndf ’,初始容量2MB,最大容量15MB,每次增长量为2MB。

3、两个数据文件不单独创建文件组,即使用默认的PRIMARY组;4、一个事务日志文件逻辑名‘teacherlog’物理名‘C:\DATA\teacherlog.ldf ’,初始容量500KB,最大容量不受限制,每次增长量为500KB。

先确认C:\DATA\文件夹已创建,在查询分析器中输入代码:CREATE DATABASE teacherON PRIMARY( NAME = teacherdata1 ,= 'C:\DATA\tdata1.mdf' ,SIZE =5MB , -- 默认字节单位MB可以省略MAXSIZE= 10 , -- 文件最大容量10 MB= 15% -- 增长量为文件容量15%) ,( NAME = teacherdata2 ,= 'C:\DATA\tdata2.ndf' ,SIZE = 2 ,MAXSIZE= 15 ,= 2MB -- 增长量为2 MB)LOG ON /* 创建事务日志文件*/( NAME = teacherlog ,= 'C:\DATA\teacherlog.LDF',SIZE = 500 KB ,/* 初始容量,KB单位不能省略*/MAXSIZE = UNLIMITED ,/* 日志文件最大容量不受限制*/= 500 KB/* 增长量KB 不能省略*/ )例题2:课本P61例题3:在C:\DATA1\文件夹中创建一个名为:仓库库存管理数据库,要求它有3个数据文件,其中主数据文件逻辑名为epdata1,大小为10MB,最大大小为50MB,每次增长5MB;辅助数据文件属于FGroup文件组,文件逻辑名为epdata2,文件大小为20MB,最大大小不受限制,每次增长10%;事物日志文件eplog,大小为20MB,最大大小为100MB,每次增长10MB。

CREATE DATABASE 仓库库存管理ON PRIMARY( NAME = epdata1,= 'C:\DATA1\epdata1.mdf' ,SIZE = 10MB ,MAXSIZE = 50MB ,= 5MB ),FGroup( NAME = epdata2,= C:\DATA1\epdata2.ndf , SIZE = 20MB ,MAXSIZE = UNLIMITED,= 10%)LOG ON( NAME = eplog,= C:\DATA1\eplog.ldf ,SIZE = 20MB ,MAXSIZE = 100MB ,= 10MB )例题四:阅读下面的SQL语句create database employees on primary(name=employee1,'d:\ data\employee1.mdf', size=10,maxsize=unlimited,),EGroup(name=employee2,'d:\data\employee2.ndf',size=20,maxsize=100,)log on(name=employeelog1,'d:\data\employee1.ldf', size=10,maxsize=50,),(name=employeelog2,'d:\data\employee2.ldf',size=10,maxsize=50,)用ALTER DATABASE语句设置、修改数据库T-SQL设置修改数据库语句ALTER DATABASE的语法格式:ALTER DATABASE 数据库名add file <文件格式> [to 文件组]| add log file <文件格式>| remove file 逻辑文件名| add 文件组名| remove 文件组名| modify file <文件格式>| modify name new_dbname| modify 文件组名说明:add file为增加一个辅助数据文件[并加入指定文件组];<文件格式> 为:( name = 数据文件的逻辑名称[,=‘数据文件的物理名称’][,size = 数据文件的初始大小[ MB | KB|GB ] ][,maxsize={ 数据文件的最大容量[ MB | KB|GB ] | UNLIMITED } ][,数据文件的增长量[ MB | KB | GB|% ] ])在例题3的基础上进行数据库的修改。

例题3:在C:\DATA1\文件夹中创建一个名为:仓库库存管理数据库,要求它有3个数据文件,其中主数据文件逻辑名为epdata1,大小为10MB,最大大小为50MB,每次增长5MB;辅助数据文件属于FGroup文件组,文件逻辑名为epdata2,文件大小为20MB,最大大小不受限制,每次增长10%;事物日志文件eplog,大小为20MB,最大大小为100MB,每次增长10MB。

CREATE DATABASE 仓库库存管理ON PRIMARY( NAME = epdata1,= 'C:\DATA1\epdata1.mdf' ,SIZE = 10MB ,MAXSIZE = 50MB ,= 5MB ),FGroup( NAME = epdata2,= C:\DATA1\epdata2.ndf ,SIZE = 20MB ,MAXSIZE = UNLIMITED,= 10%)LOG ON( NAME = eplog,= C:\DATA1\eplog.ldf ,SIZE = 20MB ,MAXSIZE = 100MB ,= 10MB )1、增加和删除文件组增加文件组语法:ALTER DATABASE 数据库名add文件组名例:ALTER DATABASE 仓库库存管理Add epp1ALTER DATABASE 仓库库存管理Add epp2可以写成ALTER DATABASE 仓库库存管理Add epp1,epp2吗?删除文件组语法:ALTER DATABASE 数据库名Remove文件组名例:ALTER DATABASE 仓库库存管理Remove epp2问:可以删除Fgroup文件组吗?只能删除空文组2、增加和删除数据文件和日志文件1)增加数据文件和日志文件语法:ALTER DATABASE 数据库名add file <文件格式><文件格式> 为:( name = 数据文件的逻辑名称[, =‘数据文件的物理名称’][,size = 数据文件的初始大小 [ MB|KB|GB ] ][,maxsize={ 数据文件的最大容量[ MB|KB|GB ]| UNLIMITED } ][,数据文件的增长量 [ MB | KB | GB|% ] ] )例:●增加一个辅助数据文件,文件逻辑名为epdata3,文件大小为30MB,最大大小不受限制,每次增长10%;●增加一个事物日志文件eplog1,大小为30MB,最大大小为50MB,每次增长10MB。

Alter database 仓库库存管理Alter database 仓库库存管理Add file Add LOG file( NAME = epdata3, ( NAME = eplog1,= ='C:\DATA1\epdata3.ndf' , 'C:\DATA1\eplog1.ldf',SIZE = 30MB , SIZE = 30MB,MAXSIZE = UNLIMITED, MAXSIZE = 50MB,= 10%)= 10MB )Alter database 仓库库存管理Add file( NAME = epdata3,= 'C:\DATA1\epdata3.ndf' , SIZE = 30MB ,MAXSIZE = UNLIMITED,= 10%)Alter database 仓库库存管理Add LOG file( NAME = eplog1,= 'C:\DATA1\eplog1.ldf' , SIZE = 30MB ,MAXSIZE = 50MB ,= 10MB )错误的写法:Alter database 仓库库存管理Add file( NAME = epdata3,= 'C:\DATA1\epdata3.ndf' ,SIZE = 30MB ,MAXSIZE = UNLIMITED,= 10%)Add LOG file( NAME = eplog1,= 'C:\DATA1\eplog1.ldf' ,SIZE = 30MB ,MAXSIZE = 50MB ,= 10MB )例:为仓库库存管理数据库,增加2个辅助数据文件,文件逻辑名为epdata4,epdata5,文件大小为30MB,最大大小不受限制,每次增长10%;Alter database 仓库库存管理Add file( NAME = epdata4,= 'C:\DATA1\epdata4.ndf' , SIZE = 30MB ,MAXSIZE = UNLIMITED,= 10%),( NAME = epdata5,= 'C:\DATA1\epdata5.ndf' , SIZE = 30MB ,MAXSIZE = UNLIMITED,= 10%)2)删除数据文件和日志文件语法:ALTER DATABASE 数据库名remove file 逻辑文件名例:删除辅助数据文件epdata5.ndf ALTER DATABASE 仓库库存管理remove例:删除日志文件eplog1.ldf ALTER DATABASE 仓库库存管理remove3、增加数据文件到指定的文件组语法:ALTER DATABSE 数据库名Add file <文件格式>To 文件组名(此文件组应存在)例:增加一个辅助数据文件,文件逻辑名为epdata6,文件大小为60MB,最大大小不受限制,每次增长10%,辅文件epdata6属于文件组epp1ALTER DATABASE 仓库库存管理Add file--添加数据文件加入文件组(name=epdata6,'C:\DATA1\epdata6.ndf',SIZE = 60MB ,MAXSIZE = UNLIMITED,= 10%)to epp14、更改数据文件和日志文件名称。

相关主题