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

mysql ikke unik automatisk stigning, primærnøgle to felter

Det, du ønsker, er ikke muligt. Du vil have id og area at være den primære nøgle, men i dit eksempel er de ikke unikke.

Hvis du definerer en tabelnøgle skal den være unik, og i dit eksempel vil det betyde, at du skal inkludere name i din primære nøgle. Men hvorfor ikke lave bare id den primære nøgle og automatisk øge den? Det er den almindelige brug.

REDIGERING:

Du kan oprette et ekstra felt kaldet area_id for eksempel. Du kan tilføje den automatiske stigningsfunktion til feltet på denne måde:

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`) 
);



  1. Mysql:Vis værdier af kolonne under en anden kolonne

  2. Hvordan ændrer jeg en MySQL-kolonne for at tillade NULL?

  3. Mysql Like + Wild Card vs Equals Operator

  4. RMySQL-systemfejl:10060