增加mysql表中的所有值
假设我有增加mysql表中的所有值,mysql,increment,auto-increment,Mysql,Increment,Auto Increment,假设我有 +-------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------+--------------+------+-----+---------+-------+ | id | int(11) | YES | UNI | NULL |
+-------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+--------------+------+-----+---------+-------+
| id | int(11) | YES | UNI | NULL | |
| isbn | varchar(20) | NO | | NULL | |
| title | varchar(200) | YES | | NULL | |
| author | varchar(200) | YES | | NULL | |
+-------------+--------------+------+-----+---------+-------+
主键是isbn(我现在已经删除了它,并且添加了id(我将很快成为主键),在此之前,我需要确保所有id都是唯一的(因此我想更新所有值,从1开始递增
我尝试了以下方法,但没有任何效果
SET @bookid = 1; UPDATE books SET `id` = @bookid + 1;
使用以下命令:
ALTER TABLE books AUTO_INCREMENT=1;
或者,如果您还没有id列,也可以添加它
ALTER TABLE books ADD id INT UNSIGNED NOT NULL AUTO_INCREMENT,
ADD INDEX (id);
我想你在找这样的东西
SET @bookid = 1;
UPDATE books SET `id` =`id`+ @bookid ;
您的查询总是给出id=2我想创建一个新的auto inc表并插入…选择谢谢!我运行了ALTER table books DROP
id
;ALTER table books ADD id INT UNSIGNED NOT NULL auto_INCREMENT首先,添加主键(id);