用命令操作方式创建和管理数据库

注明:大写字母表关键字,小写字母表用户自己定义的名称或数值,[]表可选项,<>表必选项,|表多项选一,1...n表可有多个同类项

一.用命令操作方式创建数据库

-----使用T-SQL语句中的CREATE DATABASE命令来创建数据库。数据库必须要确定数据库名,数据库大小,增长方式和存储数据库的文件。能够创建数据库的用户必须是系统管理员,或是被授权使用CREATE DATABASE语句的用户。

CREATE DATABASE语句基本格式:

CREATE DATABASE database_name     /*指定数据库名*/

[ON子句]                                               /*指定数据库文件和文件属性*/

[LOG ON子句]                                       /*指定日志文件属性*/

其中,database_name为自己所创建的数据库逻辑名称,最大长度为128个字符。ON子句和LOG ON子句说明如下:

(1)ON子句

ON  [ PRIMARY ]  [< filespec > [ , ... n ] ]  [,< filegroup > [ , ... n ] ]

其中filespec为文件描述,filegroup为文件组描述:

::= (NAME = '逻辑文件名',

                        FILENAME = '物理文件名'

                        [ , SIZE = size ]

                        [ , MAXSIZE = { maxsize | UNLIMTED } ]

                        [ , FILEGROWTH = growth_increament ])

< filegroup > ::= FILEGROUP filegroup_name < filespec > [ , ... n ]

其中,SIZE,MAXSIZE,FILEGROWTH不加单位时为MB,FILEGROWTH可按其设定的数值增长,也可是相对于当前数据库文件的大小,每次增长时按其设定的百分比进行扩展,UNLIMTED关键字表无限制增长直到磁盘满为止。

(2)LOG ON子句

LOG ON { < filespec > [ , ... n ] }

示例:

create database traffic

on primary
(
	name='traffic_data',
	filename='F:\aaa\a1.mdf',
	size=10,
	maxsize=30,
	filegrowth=5
)

log on
(
	name='traffic_log',
	filename='F:\aaa\a2.ldf',
	size=2,
	maxsize=10,
	filegrowth=2
)

结果如下:

                      

用命令操作方式创建和管理数据库_第1张图片


二.用命令操作方式管理数据库

-----数据库创建后,数据文件和日志文件的文件名就不能改变了,但可以使用ALTER DATABASE 语句修改数据库选项,而且系统提供了许多事先编译好的存储过程,用户可以直接使用这些系统存储过程获得数据库信息。

1. 查看数据库信息

   在管理和使用数据库之前,要先选择数据库并打开它:USE database_name

   若要查看当前服务器上的所有数据库,则有:[EXEC] sp_databases

   打开了指定的数据库之后,可以调用系统存储过程来查看该数据库、文件、文件组的信息:

   [EXEC] sp-helpdb database_name、[EXEC] sp_helpfile

注:以sp_为前缀的标识表示系统存储过程,可以直接运行,也可以用EXEC命令调用。

示例:

use traffic

exec sp_databases

结果:

用命令操作方式创建和管理数据库_第2张图片

该图片中有4个系统数据库和1个用户数据库(traffic)

4个系统数据库:在服务器创建时已经由系统创建了,记录了服务器中的所有系统信息。

                          master:SQL Server 的注册信息、配置信息、数据库的存储位置、初始化信息等。

                          model:用户新建数据库时的模板

                          msdb:记录SQL Server Agent 进行复制、作业调度、报警等活动。

                          tempdb:记录所有临时表和临时存储过程等。

示例:

sp_helpdb traffic

结果:

用命令操作方式创建和管理数据库_第3张图片

示例:

sp_helpfile

结果只显示第二个表格


2.修改数据库选项

-----使用ALTER DATABASE 命令

ALTER DATABASE 命令的基本格式为:

ALTER DATABASE database_name

{        ADD FILE < filespec > [ , ... n ]                                                                     /*在主文件组中增加数据文件*/

         ADD FILE < filespec > [ , ... n ] [ TO FILEGROUP filegroup_name ]              /*在用户定义文件组中增加数据文件*/

         ADD LOG FILE < filespec > [ , ... n ]                                                             /*增加日志文件*/

         REMOVE FILE file_name                                                                               /*删除数据文件*/

         REMOVE FILE log_file_name                                                                        /*删除日志文件*/

         ADD FILEGROUP filegroup_name                                                                /*增加文件组*/

         REMOVE FILEGROUP filegroup_name                                                         /*删除文件组*/

         MODIFY NAME = new_dbname                                                                  /*更改数据库名*/

         MODIFY FILEGROUP filegroup_name ( NAME = new_filegroup_name )    /*更改文件组名*/

}

示例:

/*在主文件primary中增加一个数据文件*/
alter database traffic
add file
(
	name='add_traffic_data',
	filename='F:\aaa\a3.ndf',
	size=10,
	maxsize=30,
	filegrowth=10%
)

/*增加一个日志文件*/
alter database traffic 
add log file
(
	name='add_traffic_log',
	filename='F:\aaa\a4.ldf',
	size=1,
	maxsize=3,
	filegrowth=1
)

/*增加一个文件组*/
alter database traffic
add filegroup traffic_group

/*在新文件组traffic_gruop中增加一个数据文件*/
alter database traffic
add file
(
	name='add_traffic_group_data',
	filename='F:\aaa\a5.ndf',
	size=2,
	maxsize=3,
	filegrowth=3%
)
to filegroup traffic_group

sp_helpfile

结果:

用命令操作方式创建和管理数据库_第4张图片

示例:

/*删除新增文件组中的数据文件*/
alter database traffic
remove file add_traffic_group_data

/*删除新增文件组
注:先删除文件组中的文件,再删除文件组,且主文件组和主日志文件不能删除*/
alter database traffic
remove filegroup traffic_group

sp_helpfile

结果:

用命令操作方式创建和管理数据库_第5张图片

示例:

/*更改数据库名*/
/*方法一*/
alter database traffic
modify name=new_traffic1

/*方法二:通过调用系统存储过程实现*/
sp_renamedb 'new_trarric1','new_traffic2'

结果1 && 结果2:

用命令操作方式创建和管理数据库_第6张图片                        用命令操作方式创建和管理数据库_第7张图片

3. 删除数据库

-----使用DROP DATABASE 语句,其语法格式为:

DROP DATABASE database_name [ , ... n ]

示例:

drop database new_traffic2

你可能感兴趣的:(数据库学习笔记)