1.关于MySQL当中字段的数据类型
int
bigint
float
char 定长字符串
varchar 可变长字符串
date
BLOB 二进制大对象(存储图片、视频等流媒体信息)==Binary Large OBject==
CLOB 字符大对象(存储较大文本,比如可以存储4G的字符串)==Character Large OBject==
2.删除表
drop table if exists 表名;
3.表的复制
create table emp1 as select * from emp;
create table emp2 as select ename from emp;
4.将查询结果插入到一张表中
insert into dept1 select * from emp;
5.DQL(insert、update、delete)
5.1增加表中数据:insert
5.2修改表中的数据:update
语法格式:
update 表名 set 字段名1=值1,字段名2=值2...where 条件;
注意:没有条件整张表数据全部更新
5.3删除数据
语法格式:
delete from 表名 where 条件;
注意:没有条件全部删除
怎么删除大表?
truncate table emp1;
6.约束(Constraint)
6.1什么是约束?常见的约束有哪些?
在创建表的时候,可以给表的字段添加相应的约束,添加约束的目的是为了保证表中数据的合法性、有效性、完整性
常见的约束:
非空约束(not null)
唯一约束(unique)
主键约束(primary key):约束的字段既不能为NULL,也不能重复(简称PK)
外键约束(foerign key)(简称FK)
检查约束(check):目前mysql不支持该约束。
6.2主键有什么作用?
-表的设计三范式中有要求:第一范式就要求任何一个表都应该有主键
-主键的作用:主键值是这行记录在这张表中的唯一标识
主键分类
根据主键字段的字段数量来划分:
单一主键
复合主键:多个字段联合起来添加一个主键约束(不推荐)
根据主键性质来划分:
自然主键
业务主键:主键值和系统的业务挂钩,例如:拿着银行卡的卡号做主键(不推荐)
*一张表的主键约束只能有一个。
使用表级约束方式定义主键:
create table user(
id int,
username varchar(255),
primary key(id)
);
mysql提供主键值自增:
create table user(
id int primary key auto_increment, //字段自动维护一个自增的数字,从1开始,以1递增
username varchar(255)
);
6.3外键约束
foreign key(字段名) references 表名(字段名)
外键值可以为NULL.
外键字段引用其他表的某个字段的时候,被引用的字段不一定要是主键
但至少具有unique约束