MySql教程

MySQL高级操作

本文主要是介绍MySQL高级操作,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录

一.克隆表

法一

法二 

二.清空表

法一 delete

法二 truncate

法三 drop

总结

三.创建临时表

四.外键约束

设置外键


一.克隆表

法一

mysql> create table ouou1 like ouou;

复制格式,通过LIKE方法,复制ouou表结构生成ouou1表

但是不备份内容

mysql> insert into ouou1 select * from ouou; 

法二 

 mysql> create table ouou2(select * from ouou);

可以将表的内容都克隆到新表中,但是表格式可能会丢失。

二.清空表

法一 delete

mysql> delete from ouou1;

DELETE清空表后,返回的结果内有删除的记录条目;

只清空表的内容,不删除表

法二 truncate

mysql> truncate  table ouou1;

TRUNCATE清空表后,没有返回被删除的条目: TRUNCATE 工作时是将表结构按原样重新建立

法三 drop

mysql> drop table ouou1;

总结

delete from ouou1;

  • 属于DML
  • 可回滚(可恢复)
  • 可带where
  • 表结构在,表内容要看where执行的情况
  • 册删除速度慢,需要逐行删除

truncate  table ouou1;

  • 属于DDL
  • 不可回滚
  • 不可带where
  • 表内容删除
  • 删除速度快

drop table ouou1;

  • 属于DDL
  • 不可回滚(无法恢复)
  • 不可带where
  • 表内容和结构删除
  • 删除速度快

删除速度 drop> truncate > delete

安全性 delete 最好

三.创建临时表

mysql> create temporary table ouou1 (id int(4) not null primary key,name varchar(20),age int(4));

没有真正写入磁盘中,只是存在内存中,当退出数据库之后再查看临时表就没有记录了。

 临时表无法创建外键

四.外键约束

设置外键

mysql> alter table stu add foreign key (proid) references pro (pid);

将主表的主键和外表的外键联系起来。这两个的这两个字段必须设置为相同的数据类型,字符长度和约束。

 

模拟错误

此时就会有外键错误

这篇关于MySQL高级操作的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!