Mysql
 sql >> база данни >  >> RDS >> Mysql

mysql не е уникално автоматично нарастване, първичен ключ две полета

Това, което искате, не е възможно. Искате id и area да бъде първичен ключ, но във вашия пример те не са уникални.

Ако дефинирате ключ на таблица, той трябва да е уникален и във вашия пример това би означавало, че трябва да включите name във вашия първичен ключ. Но защо не направите само id първичния ключ и автоматичното му увеличаване? Това е обичайната употреба.

РЕДАКТИРАНЕ:

Можете да създадете допълнително поле, наречено area_id например. Можете да добавите функцията за автоматично увеличаване към полето по следния начин:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Използване на @DECLARE в MYSQL 5.1

  2. ПРИСЪЕДИНЕТЕ СЕ с GROUP BY в нормализирана БД за ресурси, теми и глави

  3. Филтриране на MySQL данни в PHP, за да се показват само данни на потребителя на текущата сесия?

  4. MySQL извлича променлива от Съхранена процедура в PHP PDO

  5. SQL заявка, базирана на друга таблица