sql >> Databasteknik >  >> RDS >> Mysql

MySql - Sequalize - Kan inte lägga till främmande nyckel-begränsning

Ordningen måste ändras. Du skapar wheel tabell innan du har skapat shop tabell. Men hjulet hänvisar till butikstabellen som inte finns i din ursprungliga uppsättning av frågor. När du ändrar beställningen finns butikstabellen redan så felet uppstår inte.

CREATE TABLE IF NOT EXISTS `shop` 
 (`id` VARCHAR(255) NOT NULL , `accessToken` VARCHAR(255) NOT NULL, `createdAt` DATETIME NOT NULL, `updatedAt` DATETIME NOT NULL, 
 PRIMARY KEY (`id`)) ENGINE=InnoDB;


CREATE TABLE IF NOT EXISTS `wheel` 
(`id` INTEGER NOT NULL auto_increment , `createdAt` DATETIME NOT NULL, `updatedAt` DATETIME NOT NULL, `shopId` VARCHAR(255), 
 PRIMARY KEY (`id`), 
 FOREIGN KEY (`shopId`) REFERENCES `shop` (`id`) ON DELETE SET NULL ON UPDATE CASCADE) ENGINE=InnoDB;

CREATE TABLE IF NOT EXISTS `segments` 
(`segmentID` VARCHAR(255) NOT NULL , `heading` VARCHAR(255) NOT NULL, `subHeading` VARCHAR(255) NOT NULL, `createdAt` DATETIME NOT NULL, `updatedAt` DATETIME NOT NULL, `wheelId` INTEGER, 
 PRIMARY KEY (`segmentID`),
 FOREIGN KEY (`wheelId`) REFERENCES `wheel` (`id`) ON DELETE SET NULL ON UPDATE CASCADE) ENGINE=InnoDB;


  1. Hur får man storleken på en MySQL-databas?

  2. Hur du moderniserar ditt företag 2022

  3. Det går inte att skapa en tabell i MySQL eftersom den redan finns

  4. Hur ber jag om hjälp med att optimera och fixa frågor i MySQL?