数据库笔记
数据库:
DDl:
创建语句
create,alter,drop等
DML:
更新数据 增删改
insert,delete,update
DCL:
定义安全级别和创建用户
DQL:
用来查询
select,from,where
数据类型:
int//整型
double//小数
date//日期
varchar()//文本
创建库:
create database '数据库名'
查看数据库:
show databases;
删除库:
drop database;
切换库:
use '库名字';
创建表:
create table 表名(
字段名 类型(长度) [约束],
字段名 类型(长度) [约束],
...
);
添加数据:
insert into 表名(字段1,字段2,字段3,字段4) values(值1,值2,值3,值4);
insert into 表名 value(值1,值2,值3,值4)
修改数据:
update 表名 set 字段名='' where 字段名=''
约束:
主键约束:
primary key,非空加唯一
主键必须包含唯一值 unique
主键列不能为NULL not null
每个表要有一个主键
int类型的主键可以自动增长 补加 auto_increment
设置默认值:
default ''
查询:
select * from 表名 where 条件;
去掉单列中重复值: distinct
排序:
order by 列 asc|desc
默认升序 desc降序
分组:
group by 分组规则 先分组在排序
group by 分组规则 having 分组后
where group by 分组规则 分组前
多少条数据:
count()方法
创建表关系:
alter table 关联表 add foreigh key(关联列) references 主表(关联列)
多表查询:
内连接
隐式内连接
多表单加where
select * from A,B where 主键和外键连接条件
显示内连接
select * from A innner join B on 主键和外键连接条件
外连接
而且 使用关键字 outer join outer可以省略
左外连接
保留左表
select * from A left outer join B on 主键和外键连接条件
select * from A left join B on 主键和外键连接条件
右外连接
保留右表
select * from A right outer join B on 主键和外键连接条件
select * from A right join B on 主键和外键连接条件
子查询:
select ... 查询字段... from ... 表.. where ... 查询条件
数据库事务
开启事务
start transaction
执行语句
update 表 set 更改数据
提交
commit
回滚
rollback