mysql数据库中,表与表之间进行关联之后,就不可随意的进行删除操作,否则会影响所有关联表之间的结构,那么如何安全的删除关联表呢,让我们来了解一下。

推荐课程:MySQL教程。

1. 删除表的外键约束

外键是一个特殊字段,其将某一个表与其父表建立关联关系。在创建表的时候,外键约束就已经设定好了。去掉他们之间的关联关系需要用到下面语句。

alter table 表名 drop foreign key 外键别名;

外键别名参数指创建表时设置的外键代号。

2. 删除没有被关联的普通表

drop table 表名;

删除一个表时,表中的所有数据也会被删除。删除表时最好先将表中的数据备份一下。

3. 删除被其他表关联的父表

当删除有关联关系的表时,用drop table example1 会报错,原因是有外键依赖于该表

例如创建了一个example4表依赖于example1表,example4表的外键stu_id依赖于example1表的主键。example1表时example4表的父表。

如果要删除example4表,必须先去掉这种依赖关系。最简单的办法是先删除子表example4,然后删除父表example1。但这样可能会影响子表的其他数据。

另一种方法是先删除子表的外键约束,然后删除父表。这种方法不会影响子表的其他数据,可以保证数据库的安全。

比如,example4表的外键别名是d_fk,删除example4的外键约束

alter table example4 drop foreign key d_fk;。

可以通过show create table example4 \G来查看是否已删除。

然后再执行drop table example1;.

执行成功则表示操作成功。

mysql删除有关联的数据库表_【数据库】mysql如何删除关联表相关推荐

  1. mysql 怎么同时删除两张表的数据库,mysql怎样删除多个表格数据库数据_数据库

    mysql删除多个表格数据库数据的要领:在两个表之间竖立级联删除关联,完成删除一个表的数据时,同时删除另一个表中相干的数据,语句为[delete t1,t2 from t1,t2 where 前提]. ...

  2. mysql账目表_数据库1(数据库、表及表数据、SQL语句)

    01数据库概念 A: 什么是数据库 数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来, 用户可以对数据库中的数据进行增加,修改,删除及查询操作. B: 什么是数据库管理 ...

  3. mysql到mysqli转变表_利用mysql和mysqli取得mysql的所有数据库和库中的所有表

    /*** mysqli  op mysql demo*//***公用函数*//***功能:列出一个数据库的所有表*@param$dbname*@param$con*/functionlist_tabl ...

  4. 利用mysql数据库中_利用mysql和mysqli取得mysql的所有数据库和库中的所有表

    功能:利用mysql和mysqli两种连接数据库的方法,取得Mysql服务器上的所有数据库和库中的所有表. 环境:自己用分开安装apache mysql php搭建的环境 操作系统是:windows ...

  5. 使用mysql命令还原student表_自用mysql自带命令实现数据库备份还原的方法

    本文章介绍了都是mysql常用的命令一些数据导入导出的命令了,只要我们撑握这些命令就可以方法快速的给我们的数据库进行备份还原了 mysql数据到导入导出 500MB数据 问题:500M的库表数据,需要 ...

  6. 形考任务一在mysql创建数据库及表_数据库运维 形考任务1 实验1 MySQL数据库服务器配置...

    实验1 MySQL数据库服务器配置 1.实验目的 掌握MySQL的安装方法,练习MySQL数据库服务器的使用,理解MySQL服务器的组成,掌握MySQL服务器的配置方法. 2.实验内容 [实验1-1] ...

  7. mysql inserted表_数据库inserted的搜索结果-阿里云开发者社区

    SQL 2000中的触发器使用 触发器是数据库应用中的重用工具,它的应用很广泛,这几天写一个化学数据统计方面的软件,需要根据采样,自动计算方差,在这里,我使用了触发器. 下面我摘录了SQL Serve ...

  8. mysql视图和中间表_数据库设计中的14个技巧

    时 间:2006-09-15 00:00:00 作 者: 摘 要:数据库设计中的14个技巧 正 文: 1. 原始单据与实体之间的关系 可以是一对一.一对多.多对多的关系.在一般情况下,它们是一对一的关 ...

  9. 如何在mysql上输入数据表_向MySQL数据库的表中录入数据的方法

    MySQL数据库应用范围相对来说还是比较广泛的,MySQL数据库操作涉及到的知识还是很多的,其中,当你建好了数据库及表时,你首先想到的就是向数据库的表中输入数据.这就牵涉到如何向数据库增加数据.下面我 ...

  10. nodejs mysql 分表_数据库分库分表学习

    大型网站数据库分库分表 分库分表方案: 垂直&水平 1.什么是垂直拆分? 指的是将一个包含了很多表的数据库,根据表的功能的不同,拆分为多个小的数据库,每个库中包含部分表. .垂直拆分的另外2种 ...

最新文章

  1. 区块链概况:什么是区块链
  2. python怎么改背景_python IDE背景怎么改
  3. linux命令cat过滤注释行和空白行
  4. docker运行镜像报错:write init-p: broken pipe
  5. nc 单据模板公式
  6. teamviewer Android 8,利用TeamViewer控制设备
  7. 【Java】SpringBoot后端格式转换:把PPT转成PDF
  8. Nginx 动静分离 -02
  9. Linux常见面试题,一网打尽!
  10. 百度网盘在线不限速下载网站源码
  11. 负载均衡负载场景和解决方案
  12. 关于HTML图片如何设置热区
  13. 图解如何用打印机套打快递单
  14. 007 分数的基本性质(五下)
  15. 等保三级安全要求简要攻略-安全物理环境
  16. 渡一教育_每日一练:对象的加载、对象的创建相关知识面试题
  17. 信息孤岛影响_消防管理中,互不关联的“数据孤岛”如何解决?
  18. 快速排序partition的两种分法
  19. Spring boot RestTemplate 统一添加 Header
  20. PLC控制系统中LAN应用的介绍

热门文章

  1. java timer 线程安全_多线程之 线程安全与控制
  2. 计算机网络c卷及参考答案,2019年广东自考《计算机网络技术》本科习题及答案1...
  3. php txt删除重复行,php – 删除文本文件中的重复行
  4. 期末考试前的预习,科目:化工设备与反应器(5)
  5. 三十七、Redis和MongoDB基本语法
  6. java读取pptx到md
  7. 时间序列预测方法汇总:从理论到实践(附Kaggle经典比赛方案)
  8. 最后两周!60万奖金AI攻防赛进入冲刺(附baseline代码及实操)
  9. 多种数据形式下智能问答的应用解读
  10. Transformer升级之路:Sinusoidal位置编码追根溯源