SQL Server数据库——创建数据库
作者:mmseoamin日期:2023-12-13

目录

一、界面方式创建数据

1.1创建数据库xscj,数据文件和日志文件的属性按默认值设置

 1.2在xscj数据库中增加文件xcsj1,其属性均取系统默认值

 1.3在数据库xscj中增加一个名为myGroup的文件组。

1.4数据库的重命名 

1.5数据库的删除 

二、命令方式创建数据库


一、界面方式创建数据库

以创建学生管理系统的数据库(xscj)为例,说明”SSMS“窗口图形化向导创建数据库的过程。

1.1创建数据库xscj,数据文件和日志文件的属性按默认值设置

在“对象资源管理器”中选择“数据库”,单击鼠标右键,在弹出的快捷菜单中选择“新建数据库”菜单项,打开“新建数据库”窗口。

SQL Server数据库——创建数据库,第1张

查看数据库系统的各种属性和状态

在SSMS下选择需要进行数据库(如xscj),单击鼠标右键,在出现的快捷菜单中选择“属性”菜单项。

SQL Server数据库——创建数据库,第2张

 1.2在xscj数据库中增加文件xcsj1,其属性均取系统默认值

打开“数据库属性-xscj“窗口,在”选择页“列表中选择”文件“选择项,单击右下角的”添加“按钮,会在数据库文件下方新添加一行文件。

SQL Server数据库——创建数据库,第3张

删除辅助数据文件 

选中需要删除的辅助数据文件xscj1,单击对话框右下角的”删除“按钮,再单击”确定“按钮即可删除。

SQL Server数据库——创建数据库,第4张

 1.3在数据库xscj中增加一个名为myGroup的文件组。

打开”数据库属性“窗口,选择”文件组“选项页。单击右下角的”添加“按钮,这时在”PRIMARY"行的下面会出现心的一行。在该行的“名称”列输入“MyGroup”,单击“确定”按钮。

SQL Server数据库——创建数据库,第5张

在xscj数据库新增的文件组MyGroup中增加数据文件xscj2 

选择“文件”选择项,按增加数据文件的操作方法添加数据文件。在“文件组”下拉框中选择“MyGroup”,单击“确定”按钮。

SQL Server数据库——创建数据库,第6张

删除文件组

 单击”文件组“选项页,单击对话框右下角的“删除”按钮,单击“确定”

SQL Server数据库——创建数据库,第7张

1.4数据库的重命名 

在“对象资源管理器”窗口中展开“数据库”,选择要重命名的数据库,单击鼠标右键,在弹出的快捷菜单中选择“重命名”菜单项,输入新的数据库名称。

SQL Server数据库——创建数据库,第8张

1.5数据库的删除 

删除xscj数据库,在“对象资源管理器”中选择要删除的数据库“xscj”,单击鼠标右键,在弹出的快捷菜单中选择“删除”菜单项,在打开“删除对象”对话框单击右下角的“确定”按钮。

SQL Server数据库——创建数据库,第9张

二、命令方式创建数据库

2.1创建一个名为test1的数据库,其初始大小为5MB,最大为50MB,允许数据库自动增长,增长方式是按10%比例增长。日志文件初始为2MB,最大可增长到5MB,按1MB增长。数据文件和日志文件的存放位置为“C:\Data"。

在窗口单击“新建查询”按钮新建一个查询窗口,在“查询分析器”窗口输入T-SQL语句

CREATE DATABASE test1
	ON
	(
		NAME="test1_data",
		FILENAME="C:\Data\test1.mdf",
		SIZE=5MB,
		MAXSIZE=50MB,
		FILEGROWTH=10%
	)
	LOG ON
	(
		NAME=test1_log,
		FILENAME="C:\Data\test1.ldf",
		SIZE=2MB,
		MAXSIZE=5MB,
		FILEGROWTH=1MB
);

SQL Server数据库——创建数据库,第10张

执行之后运行错误,就是因为FILENAME选项中指定的数据和日志文件的目录“C:\Data\”不存在,因此创建数据库时这个文件名必须存在。

SQL Server数据库——创建数据库,第11张

2.2创建一个名为test2的数据库,它有两个数据文件,其中主数据文件为20MB,最大不限,按10%增长。一个辅数据文件 为20MB,最大不限,按10%增长;有一个日志文件,为50MB,最大为100MB,按10MB增长。

CREATE DATABASE test2
	ON
	PRIMARY
	(
		NAME='test2_data1',
		FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL15.SQLEXPRESS\MSSQL\Data\test2_data1.mdf',
		SIZE=20MB,
		MAXSIZE=UNLIMITED,
		FILEGROWTH=10%
	),
	(
		NAME='test2_data2',
		FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL15.SQLEXPRESS\MSSQL\Data\test2_data2.ndf',
		SIZE=20MB,
		MAXSIZE=UNLIMITED,
		FILEGROWTH=10%
	)
	LOG ON
	(
		NAME='test2_Log1',
		FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL15.SQLEXPRESS\MSSQL\Data\test2_log1.ldf',
		SIZE=50MB,
		MAXSIZE=100MB,
		FILEGROWTH=10MB
	);

SQL Server数据库——创建数据库,第12张

 在FILENAME中使用的文件扩展名,.mdf用于主数据文件,.ndf用于辅数据文件,.ldf用于日志文件。

2.3创建一个具有两个文件组的数据库test3。要求:

(1)主文件包括文件test_dat1,文件初始大小为20MB,最大为60MB,按5MB增长。

(2)有1个文件组名为test3Group1,包括文件test_dat2,文件初始大小为10MB,最大为30MB,按10%增长。

CREATE DATABASE test3
	ON
	PRIMARY
	(
		NAME='test3_dat1',
		FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL15.SQLEXPRESS\MSSQL\Data\test3_dat1.mdf',
		SIZE=20MB,
		MAXSIZE=60MB,
		FILEGROWTH=5MB
	),
	FILEGROUP test3Group1
	(
		NAME='test3_dat2',
		FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL15.SQLEXPRESS\MSSQL\Data\test3_dat2.ndf',
		SIZE=10MB,
		MAXSIZE=30MB,
		FILEGROWTH=10%
	);

SQL Server数据库——创建数据库,第13张

2.4假设已经创建了数据库test1,它只有一个主数据文件,其逻辑文件名为test1_data,大小为5 MB,最大为50 MB,增长方式为按10%增长。

要求:修改数据库test1现有数据文件test1_data的属性,将主数据文件的最大容量改为100 MB,增长方式改为按每次5 MB增长。

ALTER DATABASE test1
	MODIFY FILE
	(
		NAME='test1_data',
		MAXSIZE=100MB,
		FILEGROWTH=5MB
	)
GO

SQL Server数据库——创建数据库,第14张

 2.5先为数据库test1增加数据文件test1bak,然后删除该数据文件。

1、添加数据文件

ALTER DATABASE test1
	ADD FILE
	(
		NAME=test1bak,
		FILENAME="C:\Program Files\Microsoft SQL Server\MSSQL15.SQLEXPRESS\MSSQL\Data\test1bak.ndf",
		SIZE=10MB,
		MAXSIZE=50MB,
		FILEGROWTH=5%
	)

 SQL Server数据库——创建数据库,第15张

 2、删除数据文件

ALTER DATABASE test1
	REMOVE FILE test1bak
GO

SQL Server数据库——创建数据库,第16张

2.6为数据库test1添加文件组fgroup,并为此文件组添加两个大小均为10 MB的数据文件

ALTER DATABASE test1
	ADD FILEGROUP fgroup
GO
ALTER DATABASE test1
	ADD FILE
	(
		NAME='test1_data2',
		FILENAME="C:\Program Files\Microsoft SQL Server\MSSQL15.SQLEXPRESS\MSSQL\Data\test1_data2.ndf",
		SIZE=10MB
	),
	(
		NAME='test1_data3',
		FILENAME="C:\Program Files\Microsoft SQL Server\MSSQL15.SQLEXPRESS\MSSQL\Data\test1_data3.ndf",
		SIZE=10MB
	)
	TO FILEGROUP fgroup
GO

SQL Server数据库——创建数据库,第17张

 2.7从数据库中删除文件组,将添加到test1数据库中的文件组fgroup删除

前两个文件名写错,不能删除文件组,所以删除文件组时文件组为空,其不能删除主文件组

SQL Server数据库——创建数据库,第18张

ALTER DATABASE test1
	REMOVE FILE test1_data2
GO
ALTER DATABASE test1
	REMOVE FILE test1_data3
GO
ALTER DATABASE test1
	REMOVE FILEGROUP fgroup
GO

SQL Server数据库——创建数据库,第19张

2.8 为数据库test1添加一个日志文件

ALTER DATABASE test1
	ADD LOG FILE
	(
		NAME='test1_log2',
		FILENAME="C:\Program Files\Microsoft SQL Server\MSSQL15.SQLEXPRESS\MSSQL\Data\test1_log2.ldf",
		SIZE=5MB,
		MAXSIZE=10MB,
		FILEGROWTH=1MB
	)
GO

SQL Server数据库——创建数据库,第20张

2.9从数据库TEST1中删除一个日志文件,将日志文件TEST1_LOG2删除。 将数据库test1的名改为just_test。进行此操作时必须保证该数据库此时没有被其他任何用户使用。

ALTER DATABASE test1
	REMOVE FILE test1_log2
GO
ALTER DATABASE test3
	MODIFY NAME=just_test3
GO

SQL Server数据库——创建数据库,第21张

SQL Server数据库——创建数据库,第22张

2.10创建test1数据库的快照test1_s1

快照用于报表。另外,如果源数据出现用户错误,还可以将源数据恢复到创建快照时的状态

CREATE DATABASE test_s1
	ON
	(
		NAME=test1_data,
		FILENAME="C:\Program Files\Microsoft SQL Server\MSSQL15.SQLEXPRESS\MSSQL\Data\test1_s1.mdf"
	)
	AS SNAPSHOT OF test1
GO

SQL Server数据库——创建数据库,第23张