2010-12-08 4 views
0

у меня есть таблица с некоторыми полямидобавить значения в MySQL новое поле

я добавить еще один поле «ID» и я хочу, чтобы автоматические принимают значения 0,1,2 ... и т.д.

Что команда для этого?

Thnx

+0

Параметр вы имеете в виду, называется автоинкремент и последовательный в некоторых других диалектах. Большинство редакторов, таких как SQLPro (на MacOS X) или phpmyadmin (webbased), имеют для этого флажок. – 2010-12-08 13:48:21

ответ

1
create table t(
    a varchar(10) not null 
    ,b varchar(10) not null 
); 

insert into t(a,b) values('a1', 'b1'); 
insert into t(a,b) values('a2', 'b2'); 
insert into t(a,b) values('a3', 'b3'); 

alter table t add id int not null auto_increment primary key; 

select * from t; 


+----+----+----+ 
| a | b | id | 
+----+----+----+ 
| a1 | b1 | 1 | 
| a2 | b2 | 2 | 
| a3 | b3 | 3 | 
+----+----+----+ 
+0

thats right ... what if i want id начинается с нуля, а не с 1? thnx! – mt0s 2010-12-08 13:53:41

0

Set AUTO_INCREMENT в этой колонке.

mysql> CREATE TABLE example_autoincrement (
     id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 
     data VARCHAR(100) 
     ); 
Query OK, 0 rows affected (0.01 sec) 
+0

, поэтому правильный ответ для существующей таблицы: ALTER TABLE имя_таблицы ADD id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY; – mt0s 2010-12-08 13:51:13