【笔记】MSSQL学习笔记

前言

MSSQL学习笔记

数据库文件

  • .mdf:主要数据库文件,用于存放数据库的初始化信息和数据,每个数据库有且只有一个主要数据库文件
  • .ndf:次要数据库文件,可能没有,也可能有一个或多个
  • .ldf:事务日志文件,可以用于恢复数据库

数据库文件组

  • Primary:主文件组,用于存放主要数据库文件和没有明确指定数据库文件组的文件
  • 用户自定义的文件组

设计原则

  • 一个文件只能所属一个文件组
  • 文件或文件‍组不能被一个以上的数据库使用
  • 数据和日志信息不能所属同一个文件或文件组
  • 日志不能作为文件组的一部分

对数据库的操作

创建数据库

  • 数据库名命名规则为大驼峰

<database_name_instance>:数据库实例名
<database_name>:数据库逻辑名

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
CREATE DATABASE <database_name_instance>
ON
(
NAME = <database_name>,
FILENAME = '<file>.mdf',
SIZE = 5MB,
MAXSIZE = unlimited,
FILEGROWTH = 5%
)
LOG ON
(
NAME = 数据库日志逻辑名,
FILENAME = '<file>.ldf',
SIZE = 5MB,
MAXSIZE = 60MB,
FILEGROWTH = 5%
)

删除数据库

1
DROP DATABASE <database_name>

修改数据库

修改数据库大小

  • 只能往大修改不能往小修改
1
2
3
4
5
6
ALTER DATABASE <database_name>
MODIFY FILE
(
NAME = <database_name>,
SIZE = 10MB
)

进入数据库

1
USE <database_name>;

对数据表的操作

创建数据表

  • 字段名命名规则为大驼峰

<table_name>:数据表名,通过添加[]可以避免与关键字重复
<field_name>:字段名,通过添加[]可以避免与关键字重复
<type_of_data>:数据类型

1
2
3
4
5
CREATE TABLE <table_name>
(
<field_name> <type_of_data>,
...
)

数据类型

数据类型 备注
char(<num>) 长度永远以定义的长度为准,不论存储的数据长度是否小于最大长度,没有Unicode的编码形式
nchar(<num>) 长度永远以定义的长度为准,不论存储的数据长度是否小于最大长度,有Unicode的编码形式,中文不会出现乱码
varchar(<num>) 长度以当前数据长度为准,如果超过最大值就会被截断,没有Unicode的编码形式
nvarchar(<num>) 长度以当前数据长度为准,如果超过最大值就会被截断,有Unicode的编码形式,中文不会出现乱码
int 整型
smallint 短整型
bigint 长整型
date 日期
datetime 日期和时间

对数据的操作

插入数据

1
INSERT INTO <table_name>(<field_name_1>, <field_name_2>) VALUES(<value_1>, <value_2>)

删除数据

删除指定数据

1
DELETE FROM <table_name> WHERE <field_name> = <value>

删除所有数据

1
DELETE FROM <table_name>

查询数据

字段

查询指定字段的数据
1
SELECT <field_name_1>, <field_name_2> FROM <table_name>
查询所有字段的数据
  • 生产环境下不建议使用*代替所有字段,因为会对性能造成损耗
1
SELECT * FROM <table_name>

完成

参考文献

哔哩哔哩——朝夕教育
哔哩哔哩——全栈ACE