【MySQL SQL语句】DROP TABLE简述

2023-11-05

标准语法:

DROP [TEMPORARY] TABLE [IF EXISTS]
    tbl_name [, tbl_name] ...
    [RESTRICT | CASCADE]

DROP TABLE:删除一个或多个表(你必须对每个表具有DROP权限)。

注意: 使用此语句时要小心操作!

  • 对于每张表,该语句删除这张表的定义(table definition)、该表所有数据(all table data);
  • 如果表已存在分区,该语句将删除这张表的定义(table definition)、该表所有分区、存储在分区上的所有数据、以及所有与该表有关联的分区;

删除表也会删除该表的所有触发器。DROP TABLE 将会导致隐式提交,除非和TEMPORARY关键字一起使用。

PS:删除表时,不会自动删除专门为该表赋予的权限,它们必须手动删除。


IF EXISTS:如果删除表不存在,就需要使用此关键字,否则将会报错。

  • 没有使用 IF EXISTS,如果表不存在,将返回异常;
  • 有使用 IF EXISTS,如果表不存在,将生成一个NOTE日志,这个日志可以使用 SHOW WARNINGS 查看;

IF EXISTS 也可用于在有 .frm 文件但没有存储引擎管理的表的异常情况下删除表(举例:如果在从存储引擎中删除表之后但在 .frm 文件删除之前发生服务器异常退出)。


TEMPORARY

  • 该语句仅删除TEMPORARY表;
  • 含有 TEMPORARY 关键字的语句,不会导致隐式提交;
  • 不会检查访问权限,TEMPORARY表仅对创建他的会话可见,因此无需检查;

包含 TEMPORARY 关键字的语句,有效的防止误删非TEMPORARY表


RESTRICT | CASCADE: 关键字什么也不做。

. cascade方式:在父表上update/delete记录时,同步update/delete掉子表的匹配记录。

. restrict方式:如果子表中有匹配的记录,则不允许对父表对应候选键进行update/delete操作,都是立即检查外键约束。




感谢阅读,下次再见。ヾ( ̄▽ ̄)ByeBye

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【MySQL SQL语句】DROP TABLE简述 的相关文章

  • 我不断收到错误“关系 [TABLE] 不存在”

    我一直在尝试查询数据库中的两个表 在服务器资源管理器中 我可以看到两个表 甚至可以看到其中的列 我们将它们称为 Schema table1 和 Schema table2 其中 Schema 的第一个字母大写 我尝试运行以下查询 selec
  • 学说迁移后备

    我们正在使用原则迁移 当迁移包含多个操作并且其中一个操作失败时 通常会出现问题 例如 如果迁移添加了 5 个外键 其中第 5 个失败 而字段长度不同 则修复字段错误并重新生成迁移不会not修复整个问题 而现在出现一个与 4 个密钥已存在有关
  • SQL 约束以防止根据列的先前值更新列

    是否可以使用检查约束 或其他一些技术 来防止在更新记录时设置与其先前值相矛盾的值 一个例子是 NULL 时间戳 表明发生了某些事情 例如 file exported 一旦文件被导出并且具有非 NULL 值 就不应再将其设置为 NULL 另一
  • PHP 与 MySQL 查询性能( if 、 函数 )

    我只看到这个artice http www onextrapixel com 2010 06 23 mysql has functions part 5 php vs mysql performance 我需要知道在这种情况下什么是最好的表
  • 通过触发器应用表的列权限

    现在 我有一个名为 Members 的表 其中包含内容 分为联系人数据 银行数据 现在 管理员应该能够创建 更新 删除用户 这些用户保存在另一个表中 该表只能访问管理员 用户应该获得自己的 mysql 用户帐户 管理员还应该能够设置权限 例
  • SQL 最近日期

    我需要在 php 中获取诸如 2010 04 27 之类的日期作为字符串 并在表中找到最近的 5 个日期 表中的日期保存为日期类型 您可以使用DATEDIFF http dev mysql com doc refman 5 1 en dat
  • 内部 while 循环不工作

    这是我项目网页上的代码片段 这里我想显示用户选择的类别 然后想显示属于该类别的主题 在那里 用户可以拥有多个类别 这没有问题 我可以在第一个 while 循环中打印所有这些类别 问题是当我尝试打印主题时 结果只显示一行 但每个类别中有更多主
  • 如何获取自定义订单的结果? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 代替ASC or DESC 我希望我的查询结果采用特定的自定义顺序 例如 如果我想要的结果不是 A B C D 而是 P A L H 该怎么
  • SQL:在行中保留计数或从数据库中选择计数

    示例 我有 2 张桌子 类别 Posts 在这样的类别中保留帖子编号是一个好方法吗 类别 id title posts 1 golf 50 2 soccer 90 posts id title category id 1 news 1 1
  • 从前端更改记录顺序

    我在编写下一个功能时遇到问题 我希望用户能够重新排列记录并更改 display order 值 我使用 Jquery UI 的可拖放功能来促进这一点 我可以看到如何简单地交换 display order 值 但我想为一条记录设置一个显示顺序
  • 当您在 SQL Server 中创建新登录名时,它默认选择 db_owner

    我在 SQL Server 2008 R2 中创建新的 SQL 用户时遇到一些问题 当我使用 SQL Server Management Studio 时 它会检查db owner默认情况下的角色成员资格 我只想创建一个具有只读访问权限的新
  • mysql 版本号排序

    我有这样的价值观 1 1 2 9 1 2 2 4 1 2 3 4 3 2 14 3 2 1 4 2 我需要使用 mysql 对这些值进行排序 该数据类型是 varbinary 300 所需的输出将类似于 1 1 2 1 2 3 4 2 2
  • 基于多个表的数据更新单个表 SQL Server 2005,2008

    我需要更新表one使用表中的数据two 表一和表二没有任何公共列相关 桌子three与表相关two 例如 表一 reg det 表 reg det id reg id results 101 11 344 表二 临时表 venue resu
  • 加载“mysql2”Active Record 适配器时出错

    我正在尝试升级我的应用程序 这是我在部署应用程序时遇到的错误 加载 mysql2 Active Record 适配器时出错 缺少它所依赖的宝石 无法激活mysql2 0 4 4 已经激活mysql2 0 3 21 确保所有依赖项都添加到 G
  • 如何从MySQL数据库获取今天/昨天的数据?

    我想从数据库中检索今天的数据 但我不知道该怎么做 我实际上想要获取不是过去 24 小时的数据 我只想获取今天的数据 因此基于实际服务器时间 我还想获取昨天的数据 谁能帮我怎么做 示例代码 SELECT id FROM folk WHERE
  • 将 NULL 变量插入数据库

    我将变量设置为 NULL 我试图将其插入数据库 但由于某种原因 它们一直以 0 的形式提交 我确信我试图插入的列允许 NULL 并且默认值设置为 NULL 这是我的代码 insert NULL query mysql query INSER
  • cmd 和 workbench mysql 查询性能差异

    我有两个问题 正如我的标题 哪一个对于对大量数据运行大型查询更有效 我查看了 MySQL 文档 其中解释了工作台的性能https www mysql com products workbench performance https www
  • “完整性约束违规:1062 重复条目” - 但没有重复行

    我正在将应用程序从本机 mysqli 调用转换为 PDO 尝试将行插入具有外键约束的表时遇到错误 Note 这是一个简化的测试用例 不应复制 粘贴到生产环境中 InfoPHP 5 3 MySQL 5 4 首先 这是表格 CREATE TAB
  • 如何创建从表中最大值开始的 Oracle 序列?

    尝试在 Oracle 中创建一个以特定表中的最大值开始的序列 为什么这不起作用 CREATE SEQUENCE transaction sequence MINVALUE 0 START WITH SELECT MAX trans seq
  • 使用 ActiveRecord 和 Yii2 记录实际的 SQL 查询?

    我正在这样做 students Student find gt all return this gt render process array students gt students 然后在视图中 foreach students as

随机推荐

  • 安装laravel 遇到的一个坑

    在安装php spider之前必须安装Composer 安装Composer之后 通过php spider的说明文档进行安装 出现以下错误 Failed to download vdb uri from source The Process
  • JS逆向 数据类型/常用加密之小白入门基础篇一

    JS逆向 数据类型 常用加密之小白入门基础篇一 文章目录 JS逆向 数据类型 常用加密之小白入门基础篇一 TOC 文章目录 前言 一 JavaScript 基础常识 语法基础 1 1基本数据类型 1 2 引用数据类型 1 3 语句标识符 2
  • 《武术与设计模式》创建型

    本人喜欢武术 故写下此篇 权当消遣 仅供参考 创建型 原意 创建对象的模式 单例 程序 一个对象就存在一个 武林 所谓 武林至尊 宝刀屠龙 号令天下 莫敢不从 匠人在打造屠龙宝刀时 决定打造一件世间仅此一件的宝物 简单工厂 程序 某种类型指
  • 【数据库】MySQL中的锁机制

    MySQL中的锁机制 数据库锁定机制简单来说 就是数据库为了保证数据的一致性 而使各种共享资源在被并发访问变得有序所设计的一种规则 MySQL 数据库由于其自身架构的特点 存在多种数据存储引擎 每种存储引擎的锁定机制都是为各自所面对的特定场
  • 在树莓派linux系统下写c程序

    本文主要介绍如何在树莓派 ubuntu mate系统 下写第一个c程序 两种方式 一是emacs 二是vi 一 用emacs写c程序 1 打开终端 输入 emacs hello em world c 如果你还没有安装 会出现以下提示 如图
  • 关于解决多台服务器间的文件实时同步问题

    最近要做一个相关的解决方案 在虚拟机测试没有问题 给大家分享出来 有更好的解决方案 欢迎讨论 1 1 inotify相关介绍 1 rsync 与传统的cp tar备份方式相比 rsync具有安全性高 备份迅速 支持增量备份等优点 通过rsy
  • java NIO

    概述 NIO主要有三大核心部分 Channel 通道 Buffer 缓冲区 Selector 选择器 NIO 与 IO的区别 IO是面向流的 NIO是面向缓冲区的 Java IO面向流意味着每次从流中读一个或多个字节 直至读取所有字节 它们
  • 晦涩难懂的电路反馈,看完终于懂了!

    一 反馈的基本概念 1 1 什么是反馈 反馈 就是把放大电路的输出量的一部分或全部 通过反馈网络以一定的方式又引回到放大电路的输入回路中去 以影响电路的输入信号作用的过程 1 2 放大电路中引入反馈的作用 放大电路静态工作点会随温度的变化而
  • GDI+ Graphics类

    1 GDI 的核心 Graphics类 1 The Graphics class provides methods for drawing lines curves figures images and text A Graphics ob
  • 操作系统期末复习总结

    操作系统期末复习总结 第一章 操作系统引论 1 1操作系统的目标和作用 1 1 1操作系统的目标 在计算机系统上配置操作系统 其主要目标是 方便性 有效性 可扩充性和开放性 方便性 配置OS后方便使用 有效性 提高系统资源的利用率 可扩充性
  • 西门子S7-1200PLC脉冲控制伺服程序案例

    西门子S7 1200PLC脉冲控制伺服程序案例 此程序是关于西门子1200PLC以PTO脉冲方式控制伺服电机 步进电机的功能块程序 包含两套程序 第一套程序是用梯形图写的 第二套程序是用SCL高级编程语言写的 两套程序实现的功能一致 脉冲模
  • C++——内存分区

    内存分区模型 内存分区 四大分区 编译后运行前 程序运行后 栈区 堆区 1 new使用 2 释放空间 3 new 数组 内存分区 四大分区 代码区 二进制代码 操作系统管理 全局区 全局变量 静态变量 常量 栈区 编译器自动分配释放 函数的
  • laravel 8实现 订单表按月份水平分表

    实现思路 1 设计基础表orders 2 通过后台代码创建今年6月份订单表 order 202206 今年7月份订单表 order 202207 创建表的时候需要进行判断 如果表存在 则不需要创建 这个后台代码会被多次使用并可以重复使用 选
  • Android 开发最佳实践

    https github com futurice android best practices blob master translations Chinese README cn md 组织好它们 在layoutout XMLs布局时
  • windows 向 iPad导入文件

    iPad导入 步骤 截图 步骤 Windows 下载 iTunes 打开 iTunes 账户 gt 授权 gt 对这台电脑授权 然后输入账户密码登陆 找到当前设备 gt 文件共享 gt 找到对应程序 gt 添加文件 截图
  • elementPlus自动按需导入图标

    最近在使用Vue3重构自己的项目 需要用到elementPlus里面的图标 vite中已经配置了elementPlus中的组件自动按需引入 看看图标引入的相关文档 没道理为了图标又全局引入elementPlus吧 于是就有了图标自动按需引入
  • es or查询

    跨索引查询 SearchRequest request new SearchRequest index1 index2 想实现类似于 select from table where a 1 and b 1 or startTime gt 2
  • 数据结构与算法(十)图的入门

    图的实际应用 在现实生活中 有许多应用场景会包含很多点以及点点之间的连接 而这些应用场景我们都可以用即将要学习的图这种数据结构去解决 地图 我们生活中经常使用的地图 基本上是由城市以及连接城市的道路组成 如果我们把城市看做是一个一个的点 把
  • 传输层的TCP和UDP

    TCP IP 中有两个具有代表性的传输层协议 分别是 TCP 和 UDP TCP 是面向连接的 可靠的流协议 流就是指不间断的数据结构 当应用程序采用 TCP 发送消息时 虽然可以保证发送的顺序 但还是犹如没有任何间隔的数据流发送给接收端
  • 【MySQL SQL语句】DROP TABLE简述

    标准语法 DROP TEMPORARY TABLE IF EXISTS tbl name tbl name RESTRICT CASCADE DROP TABLE 删除一个或多个表 你必须对每个表具有DROP权限 注意 使用此语句时要小心操