`

重置Mysql主键的方法

阅读更多

方法一: 如果曾经的数据都不需要的话,可以直接清空所有数据,并将自增字段恢复从1开始计数
truncate table 表名

 

方法二: dbcc checkident ('table_name', reseed, new_reseed_value) 当前值设置为 new_reseed_value。如果自创建表后没有将行插入该表,则在执行 DBCC CHECKIDENT 后插入的第一行将使用 new_reseed_value 作为标识。否则,下一个插入的行将使用 new_reseed_value + 1。如果 new_reseed_value 的值小于标识列中的最大值,以后引用该表时将产生 2627 号错误信息。

方法二不会清空已有数据,操作比较灵活,不仅可以将自增值归零,也适用于删除大量连续行后,重新设置自增值并插入新的数据;或从新的值开始,当然不能和已有的冲突。
$sql="delete from $table_vote";
mysql_query($sql, $link);
$sql="alter table $table_vote auto_increment=1";
mysql_query($sql, $link);

分享到:
评论

相关推荐

    Mysql面试题主键自增

    在MySQL数据库系统中,主键自增是一种常见的数据表设计策略,它对于数据...了解并掌握这些关于MySQL主键自增的知识,将有助于在面试中表现出对数据库设计和管理的深入理解,也能在实际工作中更有效地管理和维护数据表。

    MySQL8自增主键变化.doc

    在 MySQL8 之前,自增主键 AUTO_INCREMENT 的值如果大于 max(primary key) +1,那么在 MySQL 重启后,则会重置 AUTO_INCREMENT = max(primary key)+1 的值,这种现象在某些情况下会导致业务主键冲突或者其他难以发现...

    怎么重置mysql的自增列AUTO_INCREMENT初时值

    怎么重置mysql的自增列想必有很多的朋友都不会吧,下面与大家分享下常用的几种方法,不懂的朋友可以了解下哈,希望对大家有所帮助

    MySQL中主键为0与主键自排约束的关系详解(细节)

    本文主要介绍了关于MySQL主键为0与主键自排约束的关系,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 开始不设置主键表的设计如下: 如果id的位置有好几个0的话:设置主键并且自动排序时,0...

    重置MySQL中表中自增列的初始值的实现方法

    总的来说,了解如何正确地重置MySQL中表中自增列的初始值是数据库管理员的基本技能之一。掌握这两种方法有助于我们在管理数据库时更加灵活,同时也能够保证数据的完整性和一致性。希望本文提供的信息能对你在处理...

    mysql非主键自增长用法实例分析

    在理解MySQL非主键自增长用法之前,首先需要明确主键和自增长的概念。 **主键(Primary Key)**:在数据库表中,主键是一种特殊类型的字段,它具有唯一性,且不允许有NULL值。主键用来唯一地标识表中的每一行数据,...

    JPA主键策略(针对数据库自增字段重置后无效检查项)

    identity是一种使用SQL Server和MySQL的自增字段生成主键的策略。这种策略不能用于Oracle,因为Oracle不支持自增字段。这种策略适用于需要高性能的场景。 select select是一种使用触发器生成主键的策略。这种策略...

    MySql常用命令 最新 最全

    根据提供的标题、描述以及部分内容,本文将详细解析MySQL数据库中的常用命令,并且涵盖数据库的创建、管理、查询、更新等核心操作。 ### MySQL 常用命令概览 #### 启动与停止 MySQL 服务 - **启动 MySQL 服务**: ...

    面试专题-面试人员必看-MySQL专题.pdf

    而在InnoDB存储引擎中,自增主键的最大ID只保存在内存中,若数据库重启或执行OPTIMIZE操作,会导致自增ID重置。因此,在MyISAM表中删除记录后再重启MySQL,插入的新记录ID是18;在InnoDB表中,插入的新记录ID是15。 ...

    mysql的插入问题 怎么获得自动增长的ID

    在MySQL中,经常需要用到自动增长的ID字段作为表的主键,特别是在频繁进行数据插入操作时。本文将深入探讨以下几个方面: 1. **理解自动增长ID的工作原理** 2. **在删除记录后重新插入时ID的变化情况** 3. **不同...

    MySQL数据库常见问题汇总

    在MySQL中,如果你需要重置自增字段(通常用于清理数据后重新开始编号),可以使用以下SQL语句: ```sql ALTER TABLE tbl AUTO_INCREMENT = 1; ``` 这里`tbl`应该替换为你的具体表名。这行命令会将表`tbl`的自增...

    mysql自增字段重排 mysql删除表后自增字段从1开始.pdf

    这个字段通常用于主键,确保每个记录的唯一性。以下是对MySQL自增字段相关知识点的详细说明: 1. **自增初始值设定**: - 当创建一个带有AUTO_INCREMENT属性的表时,可以使用`AUTO_INCREMENT=n`选项指定自增字段的...

    mysql把主键定义为自动增长标识符类型

    总之,将主键定义为自动增长标识符类型在数据库设计中是一个便捷且实用的方法,可以有效地维护数据的唯一性,同时简化插入操作。无论是在MySQL还是SQL Server中,这个特性都极大地提高了数据管理的效率。理解并正确...

    MYSQL笔记.txt

    以上是根据给定文件内容整理出来的MySQL相关知识点与操作命令,涵盖了MySQL数据库的基本管理和操作方法。这些知识点对于初学者来说非常实用,可以帮助他们更好地理解和掌握MySQL数据库的操作技巧。

    mysql入门—思维导图

    MySQL 支持多种约束来确保数据的一致性和完整性,包括主键 (`PRIMARY KEY`)、唯一约束 (`UNIQUE`)、非空约束 (`NOT NULL`) 等。 ##### 示例: ```sql CREATE TABLE student ( id INT PRIMARY KEY AUTO_INCREMENT, ...

    MySQL 常用命令总结

    #### 二、忘记MySQL密码的解决方法 如果忘记了MySQL的root密码,可以通过以下步骤重置: 1. 先停止所有MySQL服务进程。 2. 使用`$mysqld_safe --skip-grant-tables &`命令以安全模式启动MySQL,此时不加载权限表。...

    MySQL.Front-v3.2.14.3.rar

    安全方面,MySQL.Front允许用户管理MySQL服务器上的用户账户和权限,包括创建新用户、分配权限和重置密码等操作。这确保了数据库的安全性和合规性。 总的来说,MySQL.Front-v3.2.14.3是一款强大的MySQL客户端工具,...

Global site tag (gtag.js) - Google Analytics