Я работаю над 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' в таблице 'orders' с той же переменной в таблице 'customer'.
Он работал с таблицами '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
Я действительно не знаю, как это исправить, любая помощь будет оценена.