当前位置: 首页 > 面试题库 >

MySQL:在以下情况下使用:删除表,截断表,从表中删除

壤驷旭
2023-03-14
问题内容

列出以下MySql命令之间的区别。

  • 删除表 tablename ;
  • 截断表 tablename ;
  • 表名 中删除1;

另外,请根据您的经验告诉我每种产品的典型使用场景。


问题答案:
  • drop table tablename;
    • 在此之后,它 消失了 。没有桌子了。没有更多数据。
    • 当您不再需要该表时,请使用它。
  • truncate table tablename;
    • 此后,该表为空,并且(重要地)自动递增键被重置为1。从字面上看,这就像拥有一个全新的表。
    • 当您只需要一个空表时,请使用此选项。它比DELETE仅删除所有数据要快得多。DELETE将扫描表以生成受影响的行数。
  • delete from tablename;
    • 这使您可以根据可选WHERE子句过滤要删除的行。
    • 当您要删除特定记录时,请使用此选项,例如: DELETE FROM tablename WHERE username = 'joe'


 类似资料:
  • 问题内容: 在报表汇总中,我构建了一些表。后来我根本不需要它们了。有人提到要截断它们,因为这样会更快。 问题答案: 从表中删除记录会记录每次删除,并为删除的记录执行删除触发器。截断是一种更强大的命令,可清空表而不记录每一行。由于需要检查每一行上的外键,因此SQL Server阻止您使用带有引用该表的外键的表来对其进行截断。 截断通常是超快的,非常适合清除临时表中的数据。它的确保留了表的结构以备将来

  • 问题内容: 范围:两个表。创建新的顾客时,他们会将有关他们的一些信息存储到第二张表中(这也使用触发器完成,它可以按预期工作)。这是我的表结构和关系的示例。 表1-> 顾客 表2-> patron_info 管理员可以管理顾客。当他们选择移走顾客时,将顾客从 桌子1 移开。此时, 表2 没有任何反应。 我只是想创建一个触发器,以便在表1的项目已删除时从表2中删除。这是我尝试过的… 最初,我尝试删除触

  • 我有一个下拉列表,其中填充了使用下面列出的PHP从目录中提取的文件,我正试图找出如何在选中这些文件时使用表单中的删除按钮删除它们。 在运行时更新代码。 编辑和更新代码 现在说警告:取消链接(/myhome/root/public_html/users/addicient/)[function.unlink]:在/home/revo/public_html/evo/avdeleteprocess中没

  • 问题内容: 这是正确的方法吗? 问题答案: 对,那是正确的。在这里工作正常: 如果对您不起作用,则可以修改此示例以显示您遇到的问题。

  • 我想从我的用户表中删除一行当用户单击按钮时,用户需要登录并删除自己的帐户。 我回显了$user\u id,它显示“4”,这是登录用户的正确id,因此user\u id=$user\u id 这是网页我有它举行的按钮我要删除用户行在数据库

  • 我得到以下异常: 关于这个案子有什么建议吗?