zoukankan      html  css  js  c++  java
  • mysql5.1中delete和truncate的区别,实例如下

    create table test_del(id int auto_increment,name varchar(10),primary key(id));
    insert into test_del(name) values('xuhao'),('fdsa'),('fddsf');
    create table test_truc(id int auto_increment,name varchar(10),primary key(id));
    insert into test_truc(name) values('xuhao'),('fdsa'),('fddsf');

    mysql> select * from test_del; +----+-------+ | id | name | +----+-------+ | 1 | xuhao | | 2 | fdsa | | 3 | fddsf | +----+-------+ 3 rows in set mysql> select * from test_truc; +----+-------+ | id | name | +----+-------+ | 1 | xuhao | | 2 | fdsa | | 3 | fddsf | +----+-------+ 3 rows in set mysql> delete from test_del; Query OK, 3 rows affected mysql> delete from test_truc where true; Query OK, 3 rows affected mysql> insert into test_del(name) values('xuhao'),('fdsa'),('fddsf'); Query OK, 3 rows affected Records: 3 Duplicates: 0 Warnings: 0 mysql> insert into test_truc(name) values('xuhao'),('fdsa'),('fddsf'); Query OK, 3 rows affected Records: 3 Duplicates: 0 Warnings: 0 mysql> select * from test_del; +----+-------+ | id | name | +----+-------+ | 4 | xuhao | | 5 | fdsa | | 6 | fddsf | +----+-------+ 3 rows in set mysql> select * from test_truc; +----+-------+ | id | name | +----+-------+ | 4 | xuhao | | 5 | fdsa | | 6 | fddsf | +----+-------+ 3 rows in set mysql> truncate test_truc; Query OK, 0 rows affected mysql> insert into test_truc(name) values('xuhao'),('fdsa'),('fddsf'); Query OK, 3 rows affected Records: 3 Duplicates: 0 Warnings: 0 mysql> select * from test_truc; +----+-------+ | id | name | +----+-------+ | 1 | xuhao | | 2 | fdsa | | 3 | fddsf | +----+-------+ 3 rows in set

    对于表中的自增id,delete和truncate的处理方式是不同,另外据说delete操作会写入日志,truncate不写入日志,言下之意,truncate慎用,不易恢复。

  • 相关阅读:
    set集合 浅层拷贝会和深层拷贝
    "is"与"=="
    元组和字典
    运算符和列表
    Python 基础语法
    supervisor 安装配置详解
    如何运行vue项目
    过目不忘JS正则表达式
    vue Bus总线
    Robot Framework 环境安装(一)
  • 原文地址:https://www.cnblogs.com/rabbit168/p/4225905.html
Copyright © 2011-2022 走看看