当前位置:   article > 正文

mysql基础知识及思维导图(一)_mysql知识点思维导图

mysql知识点思维导图

表结构的创建、查看,修改、删除

表结构的创建

create table 表名( 字段1 数据类型 [约束], 字段2 数据类型 [约束], …)

create table emlpoyee( eid int(10) primary key auto_increment , ename varchar(20) not null, race varchar(10)  default '汉', did int(10)  , constraint fk_01 foreign key(did) references dept(did) )
  • 1

数据约束

非空约束 null

字段名 数据类型 not null
name varchar(20) not null
  • 1
  • 2

默认值约束 default

字段名 数据类型 default 默认值 
race varchar(10) default '汉'
  • 1
  • 2

唯一性约束 unique

字段名 数据类型 unique 
racename varchar(10) unique 
nullnull不相等
值必须唯一,可以为null
  • 1
  • 2
  • 3
  • 4

主键约束 primary key

字段名 数据类型 primary key 
sid varchar(10) primary key 
主键唯一,不能为null,一个表只能有一个主键
多列属性构成联合主键
  • 1
  • 2
  • 3
  • 4

自增长约束 auto_increment

字段名 数据类型 auto_increment 
id int primary key auto_increment 
字段必须是整数类型
  • 1
  • 2
  • 3

外键约束foreign key

constraint  外键名 foreign key (字段名) references 主表名(主键字段名) constraint  fk_01 foreign key(cid)  references class(cid)
外键值必须来自主键的值
  • 1
  • 2

表结构的查看

复制表结构及数据

  create table stu select * from student;
  • 1

表结构的查看

  显示表结构 
  desc tablename
  desc student;
  • 1
  • 2
  • 3
 展示建表脚本 
 show create table tablename;
 show create table class;
  • 1
  • 2
  • 3

表结构的修改

修改表名

alter table 旧表名 rename [to] 新表名 #重命名不影响表中数据
alter table student rename stu;
  • 1
  • 2

修改表的字段数据类型

alter table 表名 modify 字段名 数据类型 #要保证已有的所有数据满足新类型的限制规则
alter table class modify cname varchar(10); #改变了数据类型长度
  • 1
  • 2

修改表的字段名称

alter table 表名 change 旧字段名 新字段名 新数据类型
alter table student change remarks remark varchar(20);
  • 1
  • 2

在表中添加字段,默认在末尾,可以使用first或after 添加在最前面或者某个指定字段后面

alter table 表名 add 新字段名 数据类型 约束条件;
alter table 表名 add 新字段名 数据类型 约束条件 firstalter table 表名 add新字段名 数据类型 约束条件 after 已经存在的字段名;
alter table stu add addess varchar (10) not null;
alter table stu add addess varchar(10) not null first;
alter table stu add city varchar(20) not null after addess;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

去除表的某个列

alter table 表名 drop 字段名
alter table student drop addess;
  • 1
  • 2

表的删除

drop table tablename
drop table student;
  • 1
  • 2

清空表记录

truncate table 表名 #不可以加where条件
delete from 表名 #全表数据删除
  • 1
  • 2

delete是dml类型,对数据进行操作,逐行进行删除。删除数据后,不会重新设置自增字段的计数器。删除后,配合事件回滚(rollback)可以找回数据。(set autocommit=0;#关闭自动提交)
truncate是ddl类型,对表结构进行操作,直接删除原表,再进行重建表。效率高。会重新设置自增字段的技术器。删除后,原有数据不可找回数据,不能和where条件结合

mysql基础知识(一)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/298800
推荐阅读
相关标签
  

闽ICP备14008679号