sql删除表的命令 mysql清空表数据sql语句
原创

sql删除表的命令 mysql清空表数据sql语句

好文
试试语音读文章

用法:

1、当你不再需要该表时。 用 drop;

2、当你仍要保存该表。但要删除全部记录时。 用 truncate;

3、当你要删除部分记录或者有可能会后悔的话。 用 delete。

删除程度可从强到弱如下排列:

1. drop table tb;

drop 是直接将表格删除。无法找回。

2. truncate (table) tb;

truncate 是删除表中全部资料。但不可以与where一起使用;

3. delete from tb (where);

delete 也是删除表中资料。但可以与where连用。删除特定行;

— 删除表中全部资料

delete from user;

— 删除指定行

delete from user where username =’Tom’;

truncate 和 delete 的区别:

1. 事物

truncate删除后不记录mysql日志。因此不可以rollback。更不可以复原资料;而 delete 是可以 rollback ;

原因:truncate 等于保存原mysql表的结果。从头开始创建了这种表。全部的状态都等于新的。而delete的效果等于一行行删除。所以可以rollback;

2. 效果

效率上 truncate 比 delete快。而且 truncate 删除后将重建索引(新插入资料后id从0开始记起)。而 delete不会删除索引 (新插入的资料将在删除资料的索引后继续增加)

3. truncate 不会触发所有 DELETE触发器;

4. 返回值

delete 操作后返回删除的记录数。而 truncate 返回的是0或者-1(成功则返回0。失败返回-1);

delete 与 delete from 区别:

如果只针对一张表进行删除。则效果一样;如果需要联动其他表。则需要使用from :

delete tb1 from tb1 m where id in (select id from tb2)

您还感兴趣的文章推荐

以上就是由互联网推广工程师 网创网 整理编辑的,如果觉得有帮助欢迎收藏转发~

分享到 :
相关推荐

发表评论

您的电子邮箱地址不会被公开。

评论(2)

  • 樱花吻 永久VIP 2022年12月14日 01:55:40

    sql删除表的命令 mysql清空表数据sql语句 这篇解答确实也是太好了

  • 陌上柳絮 永久VIP 2022年12月14日 01:55:40

    资料,当你,索引,效果,的是,区别,你要,有可能,将在,触发器

  • 眼泪、说拜拜 永久VIP 2022年12月14日 01:55:40

    用法:1、当你不再需要该表时。 用 drop;2、当你仍要保存该表。但要删除全部记录时。 用 truncate;3、当你