Mysql
 sql >> Database >  >> RDS >> Mysql

mysql non univoco incremento automatico, chiave primaria due campi

Quello che vuoi non è possibile. Vuoi id e area essere la chiave primaria ma nel tuo esempio non sono univoci.

Se definisci una chiave di tabella, questa deve essere univoca e nel tuo esempio ciò significherebbe che devi includere name nella tua chiave primaria. Ma perché non creare solo id la chiave primaria e incrementarla automaticamente? Questo è l'uso comune.

MODIFICA :

Potresti creare un campo aggiuntivo chiamato area_id per esempio. Puoi aggiungere la funzionalità di incremento automatico al campo in questo modo:

CREATE  TABLE `areas` 
(
  `id` INT NOT NULL ,
  `area_id` INT NOT NULL AUTO_INCREMENT ,
  `area` VARCHAR(100) NULL ,
  `name` VARCHAR(100) NULL ,
  PRIMARY KEY (`id`) 
);