SQL server2012之使用T-SQl语句对数据库和模式进行创建、修改、删除

1.数据库

1.1数据库的创建

在创建数据库之前,我先普及一下数据库相关的知识

  1. 数据库相关属性:
    1)逻辑名称:数据文件和日志文件名称;
    2)文件类型:数据文件及日志文件 ;
    3)文件组:各个数据文件所属的文件组名称;
    4)初始大小:文件的最原始大小;
    5)自动增长:文件按指定的大小增长,也可限制到最大容量;
    6)路径:存放文件的物理目录;
    7)文件名:显示数据文件和日志文件的物理名称;
  2. 默认数据库属性:
    1)主数据文件为xx.mdf,日志文件为xx_log.ldf;
    2)只有一个文件组Primary;
    3)主数据文件初始大小为5MB(sql server2008及低版本初始大小基本都为3MB),增量为1MB;
    4)日志文件初始大小1MB,增量为10%;
    5)5) 主数据文件和日志文件都存放在C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA目录下,文件分别为xx.mdf 和xx_log.ldf 。

创建数据库命令如下:

create database 数据库名
[on 子句]
[log on 子句]

在这里举个创建数据库的例子:
1、要求在本地磁盘D创建一个学生-课程数据库(名称为student),只有一个数据文件和日志文件,文件名称分别为stu和stu_log,物理名称为stu_data.mdf 和stu_log.ldf,初始大小都为3MB,增长方式分别为10%和1MB,数据文件最大为500MB,日志文件大小不受限制。

create database student
on 
(
	name = stu, 
	filename='D:\stu_data.mdf',
	size = 3mb,
	maxsize = 500mb,
	filegrowth = 10%

)
log on
(
	name = stu_log,
	filename = 'D:\stu_log.ldf',
	size=3mb,
	maxsize = unlimited,
	filegrowth = 1mb
)

1.2 数据库的修改

修改数据库的命令如下:

Alter database database_name
{add file <filespec>[,…n] [to filegroup filegroupname]
|add log file <filespec>[,…n]
|remove file logical_file_name [with delete]
|modify file <filespec>}

增加数据文件
例如:2、在例1数据库中增加数据文件db2,初始大小为10MB,最大大小为50 MB,按10%增长;

alter database student 
add file 
(
	name = db2,
	filename = 'D:\db2.ndf',
	size = 10mb,
	maxsize = 50mb,
	filegrowth = 10%

)

增加日志文件
例3:在例1数据库student中添加日志文件,保存在D盘中,初始大小为1MB,最大无限制,增长方式按照1MB增长;

alter database student
add log file
(
	name = stu_log2,
	filename = 'D:\stu_log2.ldf',
	size = 1mb,
	maxsize = unlimited,
	filegrowth = 1mb
) 

修改数据库
例4:修改数据库student主数据文件的大小,将主数据文件的初始大小修改为10Mb,增长方式为20%;

alter database student
modify file                   //修改日志文件是   modify log file
(
	name = stu,
	size = 10mb,
	filegrowth =20%
) 

删除数据文件及日志文件

例5:删除数据库student辅助数据文件和第二个日志文件;

alter database student
romove file stu2
go                                     //go语句是让多条语句分别执行
alter database student
remove file stu_log2

1.3 数据库的删除

数据库删除命令:

drop database 数据库名

2.模式

2.1模式的创建

要想使用T-SQl 语句创建模式,你必须要指定用户,具体的用法如下:

create schema <模式名> authorization <用户名>

这里需要强调一下,此处的用户名,可以自己创建,但是创建时要有登录名,一般默认是dbo,在这里我就把这两个合在一起简单创建一下:

create login <登录名> with password = '登录密码';
use 数据库名;
create user <用户名> for login wang with default_schema = <默认构架名>;

2.2模式的删除

在SQL中,删除模式语句如下:

drop schema <模式名>  <cascade | restrict>;

其中cascaderestrict两个必选其一。选择了cascade(级联),表示在删除模式的同时把该模式中所有的数据库对象全部删除(如:在该模式创建的表);选择了restrict(限制),表示如果该模式中已经定义了下属的数据库对象(如表、视图等),则拒绝该删除语句的执行。只有当该模式中没有任何下属对象时才能执行drop schema 语句

举个例子:

drop schema test cascade//该语句删除了模式test,同时,该模式中已经定义的表,视图也被删除了

你可能感兴趣的:(SQL,server学习)