数据库
首页 > 数据库> > |NO.Z.00029|——————————|BigDataEnd|——|Java&MySQL单表/约束/事务.V07|--------------------------------|MySQL.v

|NO.Z.00029|——————————|BigDataEnd|——|Java&MySQL单表/约束/事务.V07|--------------------------------|MySQL.v

作者:互联网



[BigDataJava:Java&MySQL单表/约束/事务.V07]                                                   [BigDataJava.MySQL基础][|第二阶段|模块一|——|章节二|mysql基础|单表/约束/事务|主键自增|DELETE和TRUNCATE对自增的影响|]








一、DELETE和TRUNCATE对自增长的影响
### --- DELETE和TRUNCATE对自增长的影响

——>        删除表中所有数据有两种方式
清空表数据的方式特点
DELETE只是删除表中所有数据,对自增没有影响
TRUNCATEtruncate 是将整个表删除掉,然后创建一个新的表自增的主键,重新从 1开始
### --- 测试1: delete 删除表中所有数据

-- 目前最后的主键值是 101
SELECT * FROM emp2;
-- delete 删除表中数据,对自增没有影响
DELETE FROM emp2;

-- 插入数据 查看主键
INSERT INTO emp2(ename,sex) VALUES('张百万','男');
INSERT INTO emp2(ename,sex) VALUES('艳秋','女');
### --- 测试2: truncate删除 表中数据

-- 使用 truncate 删除表中所有数据,
TRUNCATE TABLE emp2;
-- 插入数据 查看主键
INSERT INTO emp2(ename,sex) VALUES('张百万','男');
INSERT INTO emp2(ename,sex) VALUES('艳秋','女');
二、DELETE和TRUNCATE对自增长的影响
### --- sql语句

/*
    DELETE和TRUNCATE对自增长的影响
    
    delete 删除表中所有数据, 将表中的数据逐条删除.
    truncate 删除表中的所有数据, 是将整个表删除,然后再创建一个结构相同表.
*/
-- delete 方式删除所有数据 
DELETE FROM emp2; -- delete 删除对自增是没有影响

INSERT INTO emp2(ename,sex) VALUES('张百万','男'); -- 102
INSERT INTO emp2(ename,sex) VALUES('艳秋','女'); -- 103
-- truncate 删除所有数据
TRUNCATE TABLE emp2; -- 自增从1开始

INSERT INTO emp2(ename,sex) VALUES('张百万','男'); -- 1
INSERT INTO emp2(ename,sex) VALUES('艳秋','女'); -- 2








===============================END===============================


Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart                                                                                                                                                   ——W.S.Landor



来自为知笔记(Wiz)

标签:--------------------------------,Java,TRUNCATE,删除,--,emp2,MySQL,VALUES,DELETE
来源: https://www.cnblogs.com/yanqivip/p/16102069.html