Mysql codeigniter-如何重置填充表格上的自动增量?

Mysql codeigniter-如何重置填充表格上的自动增量?,mysql,codeigniter,Mysql,Codeigniter,我正在使用MySQL。我试过这个: SET @num := 0; UPDATE rancangan_bulanan SET id = @num := (@num+1); 但是使用$this->db->query(“SET@num:=0;UPDATE rancangan_bulanan SET id=@num:=(@num+1);不会给出期望的结果 它表明: Error Number: 1064 You have an error in your SQL syntax; check the m

我正在使用MySQL。我试过这个:

SET @num := 0; UPDATE rancangan_bulanan SET id = @num := (@num+1);
但是使用
$this->db->query(“SET@num:=0;UPDATE rancangan_bulanan SET id=@num:=(@num+1);
不会给出期望的结果

它表明:

Error Number: 1064

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UPDATE rancangan_bulanan SET id = @num := (@num+1)' at line 1

SET @num := 0; UPDATE rancangan_bulanan SET id = @num := (@num+1);

Filename: C:/xampp/htdocs/belajar/rkape/system/database/DB_driver.php

Line Number: 691
有人能帮我吗?

我想你错过了ALTER TABLE你的表格自动增量=1

或者,如果要将计数器重置为1,可以使用:

ALTER TABLE rancangan_bulanan AUTO_INCREMENT = 1
检查以下答案:

如果您希望重新分配所有行中的ID,可以使用:

ALTER TABLE rancangan_bulanan DROP id

ALTER TABLE rancangan_bulanan ADD id INT NOT NULL AUTO_INCREMENT FIRST, ADD PRIMARY KEY (id), AUTO_INCREMENT=1
当心!!!这将删除所有ID并重新分配,如果您有 对外关系,这将打破它

希望有帮助!

我想你错过了ALTER TABLE你的表格自动增量=1

或者,如果要将计数器重置为1,可以使用:

ALTER TABLE rancangan_bulanan AUTO_INCREMENT = 1
检查以下答案:

如果您希望重新分配所有行中的ID,可以使用:

ALTER TABLE rancangan_bulanan DROP id

ALTER TABLE rancangan_bulanan ADD id INT NOT NULL AUTO_INCREMENT FIRST, ADD PRIMARY KEY (id), AUTO_INCREMENT=1
当心!!!这将删除所有ID并重新分配,如果您有 对外关系,这将打破它


希望有帮助!

为什么要尝试重置自动增量?我的表将有许多已删除的行,我只想刷新id。因此,假设该表的id为1,5,7,8,9,10…将自动增量重置为1;将导致数据库再次尝试使用1。这真的是您想要的吗?自动编号中的间隔很好。请记住w孔点只是唯一标识记录。ID不知道它所代表的记录,也不应该知道它(这是代理键的点)。知道您曾经有一个2,3,4是很好的。您想要重复使用2,3,4这一事实可能会有风险;尤其是如果您将该键(ID)存储在其他位置用于“历史记录”"目的。为什么要尝试重置自动增量?我的表将有许多已删除的行,我只想刷新id。因此,假设该表的id为1、5、7、8、9、10……将自动增量重置为1;将导致数据库再次尝试使用1。这真的是您想要的吗?自动编号中的空白很好。请记住全部要点就是唯一地标识记录。ID不知道它所代表的记录,也不应该知道它(这是代理密钥的意义)。您曾经拥有一个2,3,4这一事实很值得了解。您想要重复使用2,3,4这一事实可能会有风险;特别是如果您为了“历史”目的将该密钥(ID)存储在其他地方。