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

MYSQL - Невъзможно е да се създаде външен ключ

Трябва да имате колона в keywords таблица за задържане на външния ключ.

Като това

CREATE TABLE `jobs` (
      `title` text NOT NULL,
      `type` text NOT NULL,
      `location` text NOT NULL,
      `salary` int(11) NOT NULL,
      `description` text NOT NULL,
      `date` date NOT NULL,
      `job_id` int(11) NOT NULL AUTO_INCREMENT,
      PRIMARY KEY (`job_id`)
) ENGINE=InnoDB AUTO_INCREMENT=28 DEFAULT CHARSET=latin1;

CREATE TABLE `keywords` (
    `keyword_id` int(11) NOT NULL AUTO_INCREMENT,
    `keyword` text NOT NULL,
    `job_id` int(11) NOT NULL,              #<- new column
    PRIMARY KEY(`keyword_id`),
    FOREIGN KEY (job_id) REFERENCES jobs(job_id)
) ENGINE=InnoDB AUTO_INCREMENT=28 DEFAULT CHARSET=latin1;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Кой е най-добрият начин да избегнете въвеждането на потребителя за регулярни изрази в MySQL?

  2. MySQL Предоставяне на привилегии на потребител за база данни

  3. Използвайки Pentaho Kettle, как да заредя няколко таблици от една маса, като същевременно запазя референтната цялост?

  4. MySQL - намерете разликата между редовете на една и съща таблица

  5. Условно INSERT В MySQL - КЪДЕТО НЕ СЪЩЕСТВУВА