Ilja: UNIQUE mit PRIMARY (D00fe Hausaufgaben!!)

Beitrag lesen

yo,

CREATE TABLE test (
     id int(10) NOT NULL auto_increment,
     foo varchar(20) NOT NULL,
     bar varchar(20) NOT NULL,
     PRIMARY KEY  (id),
     UNIQUE KEY id (id)

ich habe ja bereits schon einmal erwähnt, dass eine primary key zwei eigenschaften besitzt, nämlich not null und unique. demzufolge ist auch dein not null contraints überflüssig.

zum anderen geht dein primary key nur über eine spalte (id). insofern kann man ich auch gleich in der spaltendefinition mit angeben.

CREATE TABLE test2 (
      id int(10) PRIMARY KEY auto_increment,
      foo varchar(20) NOT NULL,
      bar varchar(20) NOT NULL
);

ist dann auch gleich zwei spalten weniger tippen und bewirkt das gleiche.

Ilja