MYSQL基本指令(个人记录篇二)

一、常规指令补充
1、主键约束:( int ) primary key, ##输入主键约束

2、唯一约束:create…(…unique (___name)); ##在create内容里最后添加

3、非空约束:( int ) not null, ##某表格内容后面添加

4、默认约束: (int ) default __, ##插入不能默认的约束(不是不可修改的)

5、外键约束:

对数据库表格进行操作:
mysql -uroot -p____(密码)
create database test;
在数据库创建一个数据表:
create table pet (
name varchar(20),
owner varchar(20),
species varchar(20),
sex char(1),
birth date,
death date);
##name和owner等是表格的类,VARCHAR是数据类型
再输入:
MYSQL基本指令(个人记录篇二)_第1张图片
得到:
MYSQL基本指令(个人记录篇二)_第2张图片
1)删除数据指令
delete from pet where name = ‘Fluffy’;
2)修改数据指令
update pet set name = '旺旺财‘ where owner = ‘周星驰’ ##对表格里面内容进行修改,将 ‘旺财’改成‘旺旺财’
提问:为什么用owner而不是其他,为什么owner就可以判断出改的是左边的?

小结
增加:insert into、删除:delete from、修改:update、查询:select * from

二、mysql建表的约束

1)主键约束:
它能够唯一确定一张表格中的记录,也就是通过对某个字段添加约束,字段就不会重复不为空。
create table user(
id int primary key,
name varchar(20)
)
insert into user values(1,‘张三’);
连续输入两次,可以看到第一次成功,第二次失败。
在这里插入图片描述

上面的id表示表格的表头名字,int表示输入整型,primary key表示约束

2)自增约束(add、drop、modify)
create table user3 (
id int primary key auto_increment, ## 实现自动排序插入的数据
name varchar(20)
);
insert into user3 values('zhangsan ')
select * from table;##查看表格内容
MYSQL基本指令(个人记录篇二)_第3张图片
创建user4表后查看属性如下:
MYSQL基本指令(个人记录篇二)_第4张图片
alter table user4 add primary key(id);##实现插入主键约束。
MYSQL基本指令(个人记录篇二)_第5张图片
alter table user4 drop primary key;##实现约束的删除
MYSQL基本指令(个人记录篇二)_第6张图片
alter table user4 modify id int primary key;##实现‘add’一样增加约束的指令
MYSQL基本指令(个人记录篇二)_第7张图片

一般不用这几个 add、drop、modify

3)唯一约束(约束的值不可以重复)
1、create table user5(
id int,
name varchar(20)
);
alter table user5 add unique(name); ##增加唯一约束
2、create table user6(
id int,
name varchar(20),

unique(name) ##增加唯一约束
);
用这个MYSQL基本指令(个人记录篇二)_第8张图片
删除唯一约束用drop index(___)
MYSQL基本指令(个人记录篇二)_第9张图片
alter table user7 modify name varchar(20) unique;
MYSQL基本指令(个人记录篇二)_第10张图片
总计:
1.建立表格的时间添加约束
2.可以用alter、、、add、、、后面添加
3.可以用alter、、、modify、、、后面添加
4.删除用alter、、、drop、、、

4)非空约束
create table user 9(
id int,
name varchar(20) not null##创建时在后面加not null
);
MYSQL基本指令(个人记录篇二)_第11张图片

5)默认约束
create table user10(
id int,
name varchar(20),
age int default 10
);
insert into user10 (id,name) values(1,‘zhangsan’);
MYSQL基本指令(个人记录篇二)_第12张图片

6)外键约束

父表、子表

__班级表
create table classes(
id int primary key,
name varchar(20)
);
__学生表
create table students(
id int primary key,
name varchar(20),
class_id int ,
foreign key(class_id) references classes(id)
);##1、子类的引用来自父类;2、且在子类插入的数据行必须和父类的一致。
MYSQL基本指令(个人记录篇二)_第13张图片
此时可以看到父类没有5班,不可在子类内添加数据行

小结:父类表的项目在子类表必须一样;且在被引用后项目不可删除

你可能感兴趣的:(笔记,mysql)