簡體   English   中英

SQL - 無法在 SQL Fiddle 上添加新的外鍵約束

[英]SQL - Can't add new foreign key constraint on SQL Fiddle

我正在研究 SQL Fiddle,到目前為止的代碼如下所示:

 CREATE TABLE IF NOT EXISTS `orders` ( `id` int(6) unsigned NOT NULL, `date` DATE NOT NULL, `customerID` int(6) unsigned NOT NULL, `paymentAmmount` float(6) unsigned NOT NULL, PRIMARY KEY (`id`), CONSTRAINT `FK_customers_customerID` FOREIGN KEY (`customerID`) REFERENCES `customers` (`customerID`) ); CREATE TABLE IF NOT EXISTS `items` ( `id` int(6) unsigned NOT NULL, `name` varchar(200) NOT NULL, PRIMARY KEY (`id`) ) DEFAULT CHARSET=utf8; CREATE TABLE IF NOT EXISTS `customers` ( `customerID` int(6) unsigned NOT NULL, `firstName` varchar(200) NOT NULL, `lastName` varchar(200) NOT NULL, `address` varchar(200) NOT NULL, #`accountId` int(6) unsigned NOT NULL, PRIMARY KEY (`customerID`) ) DEFAULT CHARSET=utf8; CREATE TABLE IF NOT EXISTS `items-orders` ( `id` int(6) unsigned NOT NULL, `itemId` int(6) unsigned NOT NULL, `orderId` int(6) unsigned NOT NULL, `itemQuantity` int(1) unsigned NOT NULL, PRIMARY KEY (`id`), KEY `FK_items_itemId` (`itemId`), CONSTRAINT `FK_items_itemId` FOREIGN KEY (`itemId`) REFERENCES `items` (`id`) ) DEFAULT CHARSET=utf8; CREATE TABLE IF NOT EXISTS `accounts` ( `id` int(6) unsigned NOT NULL, `email` varchar(200) NOT NULL, `passwordHash` varchar(200) NOT NULL, PRIMARY KEY (`id`) ) DEFAULT CHARSET=utf8;

有兩條線不起作用:

 KEY `FK_customers_customerID` (`customerID`), CONSTRAINT `FK_customers_customerID` FOREIGN KEY (`customerID`) REFERENCES `customers` (`id`) ) DEFAULT CHARSET=utf8;

我試圖將“訂單”表中的“customerID”變量鏈接到“客戶”表中的同一個變量。 它適用於 'items-orders' 和 'items' 表,但現在我不斷收到此消息:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'KEY `FK_customers_customerID` (`customerID`), CONSTRAINT `FK_customers_customer' at line 1

我真的不知道如何解決這個問題,任何幫助都會得到幫助。

客戶中的主鍵是CustomerId ,因此您需要使用它:

CONSTRAINT `FK_customers_customerID` FOREIGN KEY (`customerID`)
    REFERENCES `customers` (`customerID`) 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM