分类: SQLServer
2020-03-13 16:43:09
SQL server基础
1. SQL语言的分类
2. SQL server库&表操作与约束
2.1 库操作:
2.1.1 创建数据库:
2.1.2 修改数据库:
2.1.3 删除数据库:
2.2 表操作:
2.2.1 SQL server常用数据类型:
2.2.2 创建表:
2.2.3 修改表:
2.3 约束
4. 数据的操作
4.1 增:
4.2 删:
4.3 改:
4.4 查:
1. SQL语言的分类
DDL 数据定义语言:create drop alter
DQL 数据查询语言:select
DML 数据操纵:insert update delete
DCL 数据控制:grant revoke
2. SQL server库&表操作与约束
2.1 库操作:
2.1.1 创建数据库:
create database 数据库名称
on(
name=数据文件逻辑名称,
filename='路径+数据文件名',
size=数据文件初始大小,
maxsize=数据文件的最大容量,
filegrowth=数据文件自动增长量,
)
[log on(
name = 日志文件逻辑名称,
filename='路径+日志文件名',
size=数据文件初始大小,
maxsize=数据文件的最大容量,
filegrowth=数据文件自动增长量,
)]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2.1.2 修改数据库:
ADD FILE :向数据库添加数据文件
alter database 数据库名称
英镑符号
add file(
name=数据文件逻辑名称,
filename='路径+数据文件名',
size=数据文件初始大小,
maxsize=数据文件的最大容量,
filegrowth=数据文件自动增长量,
)
ADD LOG FILE :向数据库添加日志文件
REMOVE FILE:从数据库删除逻辑文件,并删除物理文件。无法删除文件组不为空的文件。
MODIFY FILE:指定要修改的文件
1
2
3
4
5
6
7
8
9
10
11
12
2.1.3 删除数据库:
drop database 数据库名称
1
2.2 表操作:
2.2.1 SQL server常用数据类型:
int--------------4字节
float(5,2) ----8字节
date-----------日期型
datetime-----日期时间型 8字节
char(20)---------定长字符型 尾端保留空白字符
varchar(22)-----非定长字符型 尾端删除空白字符
image------------二进制字符串 最大2GB
2.2.2 创建表:
create table <表名> (<字段名 数据类型 约束>[,<字段名 数据类型 约束>.....] )
1
在创建数据表时添加联合主键约束:
create table <表名1> (<字段1 数据类型 约束>,<字段2 数据类型 约束>,primary key(字段1,字段2) )
1
2.2.3 修改表:
ADD方式:
alter table <表名> add <列名 数据类型 约束>
1
ALTER方式:
alter table <表名> alter column <列名> <数据类型> <约束>
1
注:此处的约束只能修改NULL或NOT NULL,其他类型的约束在修改之前必须先将约束删除,然后重新增加约束。
DROP方式
DROP方式只适用于删除完整性约束定义
alter table <表名> drop constraint <约束名>
1
2
3
删除表:
dorp table <表名>
1
2.3 约束
not null 非空约束
unique 唯一约束
primary key 主键约束
[constraint <约束名>] primary key (列名[{,列名}])
一个表只能有一个唯一约束
foreign key 外键约束
[constraint <约束名>] foreign key references <主表名> (<列名>[{,列名}])
check 检查约束
[constraint <约束名>] check (<条件>)
一个表可以定义多个check约束,但是每个字段只能定义一个check约束
4. 数据的操作
4.1 增:
insert into <表名> [列名,[<列名>,<列名>…]]
4.2 删:
delete from 表名 where 条件
4.3 改:
update 表名 set 列名=值 where 条件
4.4 查:
select * from 表名
条件查询:select <列名,[列名2]…> from 表名 条件
条件查询
常用比较运算符:= , > , < , >= , <= , != , <> , and , or , not , between and , in , like , is null
多重条件查询
优先级 not and or
分组查询:group by
连接查询
3-1:where
3-2:join
(1)inner join(内连接)
(2)left (outer) join 左(外)连接 --以左边的表为基准(右边缺乏数据为null)
(3)right (outer) join 右(外)连接 --以右边的表为基准(左边缺乏数据为null)
(4)full (outer) join 完整(外)连接(缺乏数据为null)
常用库函数
avg平均值, sum总和, max最大, min最小, count计数