数据库的管理

开始实操

方法

SSMS(SQL Sever Management Studio)

image-c6957033

SQL语言

数据查询语言(Data Query Language,DQL):

按一定的查询条件从数据库对象中检索符合条件的数据。

数据定义语言(Data Definition Language,DDL):

用于定义数据的逻辑结构以及数据项之间的关系。

数据操纵语言(Data Manipulation Language,DML):

用于更改数据库,包括增加新数据、删除旧数据、修改已有数据等。

数据控制语言(Data Control Language,DCL):

用于控制其对数据库中数据的操作,包括基本表和视图等对象的授权、完整性规则的描述、事务开始和结束控制语句等。

T-SQL(Transact-SQL)

对SQL的扩展主要包含如下3个方面:

增加了流程控制语句。

加入了局部变量、全局变量等许多新概念,可以写出更复杂的查询语句。

增加了新的数据类型,处理能力更强。

视图(组成)

image-99f4ac65 image-2443b912

(没有主数据文件就不能有日志文件)

数据库的创建

(只用T-SQL语句的方法)

单条语句建

image-1ee24266 image-a8ab498d

指定地址建

image-77a54d65

(ON PRIMARY 可以省略 默认在这个地方)

image-1aff0ea0

注意点:

关键词可以用小写,但用大写比较美观

逻辑名称要与物理名称一致(直接拷贝下来)

只有PRIMARY中的第一个为.mdf 其他都是.ndf 日志文件全是.ldf

日志文件不写的时候 也会自动生成一个(日志文件必定有一个或一个以上)

先打两个括号再回车输入内容

第二行先打个空格 对齐 美观

除最后一行外,基本要加逗号(注意中英文输入法)

引用地址的地方是英文模式下的单引号

引用地址时 直接打开文件夹拷贝 以免出错

可以多次打开文件夹进行观察 名称变化

image-563eec79

限制值建

image-712d5a77

ON不能省略 只能省略PRIMARY

image-67bcce42

SIZE 初始大小

MAXSIZE 最大大小

FILEGROWTH 增长速度(可以为常数也可以为分数)

SIZE\MAXSIZE\FILEGROWTH属性不带单位的时候默认是MB,如果不是MB的话要带单位。

初始化日志文件

image-f5277468 image-9daea108

基本同理 注意要加LOG ON

image-26d14196

利用文件组知识

image-f2445afd
CREATE DATABASE 复习4
ON PRIMARY
(NAME=复习4_主夹主,
 FILENAME='D:\SQL\复习4_主夹主.mdf',
 SIZE=5,
 MAXSIZE=100,
 FILEGROWTH=5%
),
(NAME=复习4_主夹次1,
 FILENAME='D:\SQL\复习4_主夹次1.ndf',
 SIZE=5,
 MAXSIZE=100,
 FILEGROWTH=5%
),
(NAME=复习4_主夹次2,

 FILENAME='D:\SQL\复习4_主夹次2.ndf',
 SIZE=5,
 MAXSIZE=100,
 FILEGROWTH=5%
),
FILEGROUP 次文件夹1
(NAME=复习4_次夹次1,
 FILENAME='D:\SQL\复习4_次夹次1.ndf',
 SIZE=5,
 MAXSIZE=100,
 FILEGROWTH=5%
),
(NAME=复习4_次夹次2,
 FILENAME='D:\SQL\复习4_次夹次2.ndf',
 SIZE=5,
 MAXSIZE=100,
 FILEGROWTH=5%
),
FILEGROUP 次文件夹2
(NAME=复习4_次2夹次1,
 FILENAME='D:\SQL\复习4_次2夹次1.ndf',
 SIZE=5,
 MAXSIZE=100,
 FILEGROWTH=5%
),
(NAME=复习4_次2夹次2,
 FILENAME='D:\SQL\复习4_次2夹次2.ndf',
 SIZE=5,
 MAXSIZE=100,
 FILEGROWTH=5%
)
LOG ON
(NAME=复习4_log1,
 FILENAME='D:\SQL\复习4_log1.ldf',
 SIZE=5,
 MAXSIZE=25,
 FILEGROWTH=5
),
(NAME=复习4_log2,
 FILENAME='D:\SQL\复习4_log2.ldf',
 SIZE=5,
 MAXSIZE=25,
 FILEGROWTH=5
)
image-3e6432cb image-e740f94d image-db07c1ca

注意事项:

可以在一个文件组里插入多个文件

同时也可以建立多个文件组 里面也能有多个文件

但是只有主文件组里的主文件是mdf 其他添加的一律为ndf

日志文件也可以不止一个 都是ldf

语法上有一个注意的地方

一个文件组里面 每个两个文件间的括号 ),( 之间需要逗号隔开

两个不同的文件组之间同样需要逗号隔开

但是在日志文件的LOG ON前面是不需要逗号的 无论前面跟着的是主文件组还是次文件组

日志文件里面的每个文件又需要逗号隔开

总之 除了LOG ON上面不需要逗号 其他都要逗号

数据库的修改

打句招呼 ALTER DATABASE (名字)

记几个单词

Alter 改变

Modify 纠正、修改

Add 添加

Remove 去除

Default 系统默认值

Drop 丢失

修改数据库名称

image-e07ae96d image-357c5036

添加操作

添加新文件

image-79fd2786

默认是在PRIMARY里面的

image-b2ff3587

添加新文件组并添加文件

image-08578d4f image-58a5aa91 image-d480f6e1

用TO FILEGROUP指定要加入某个文件组

添加新日志文件

日志文件不属于任何文件组 不适用TO FILEGROUP的写法

image-0098a4a0 image-6bc080be

直接用ADD LOG TILE添加

具体的括号里的语法与创建时一致

添加文件时也可以去限制三值 这里省略了

修改数据库内的文件名

MODIFY FILE()

三种类型文件都能改 记得写逗号!

image-2aaa144f image-cc90b1b1 image-021ccbe3 image-589aab55 image-132d198a

删除文件

REMOVE FILE (名字)

删除一个新增文件

image-e205b4d3

当属性一栏打开的时候 是不能删除的 因为正在用

image-f1cdf740

试试同时删多个文件

image-58b9b8f2

不太可行 只能一个一个来

试试删除主数据文件和主日志文件

可不可以删主数据文件和主日志文件?

好像说过 数据库有且只有一个主数据文件 和至少一个日志文件

image-bab128bb image-f259816d

还是得有点原则的

更改默认文件组

ALTER DATABASE (数据库名字)

MODIFY FILEGROUP (文件组名称)DEFAULT

原:

image-136aad90

修改:

image-399291fe

现:

image-339d79c7

删除数据库

DROP DATABASE 1, 2

删除不同于改名 可以同时删除多个

删除一个数据库

删除前:

image-c70280ec

进行删除操作

image-9cd4c846

删除后

image-a9e232a5

批量删除数据库

image-b91c7983 image-51b66b31

⬅️ 02-数据库的管理技术及其发展 🏠 00-数据库 ➡️ 04-设计数据库