2016-04-25 79 views
0

我工作的學校的分配,我想下表運行:PHP和MySQL工作臺

CREATE TABLE teams 
(city VARCHAR(50) NOT NULL, 
nickname VARCHAR(50) NOT NULL, 
division VARCHAR(20) NOT NULL); 

INSERT INTO teams (city, nickname, division) 
VALUES ('Pittsburgh', 'Penguins', 'Metropolitan'), ('New York', 'Rangers', 'Metropolitan'), ('New York', 'Islanders', 'Metropolitan'), ('Philadelphia', 'Flyers', 'Metropolitan'), ('New Jersey', 'Devils', 'Metropolitan'), 
('Montreal', 'Canadiens', 'Atlantic'), ('Boston', 'Bruins', 'Atlantic'), ('Toronto', 'Maple Leafs', 'Atlantic'), ('Ottawa', 'Senators', 'Atlantic'), ('Buffalo', 'Sabres', 'Atlantic'), 
('Washington', 'Capitals', 'Metropolitan'), ('Detroit', 'Red Wings', 'Atlantic'), ('Carolina', 'Hurricanes', 'Metropolitan'), ('Tampa Bay', 'Lightning', 'Atlantic'), ('Florida', 'Panthers', 'Atlantic'), ('Columbus', 'Blue Jackets', 'Metropolitan'); 

出於某種原因,當我運行它,我得到錯誤1215關於外鍵約束。 任何想法?

更新:顯然我需要刪除SQL中的約束,但這仍然讓我感到困惑,因爲我應該這樣做。

+0

我不相信你從上面的兩條語句中得到了'FOREIGN KEY CONSTRAINT'錯誤。你確定你沒有從另一個聲明中得到它嗎?嘗試一次運行1個。 –

+0

我一直在這個工作了幾天...我已經分開跑了他們,它仍然顯示爲錯誤1215,所以我完全喪失,不知道是什麼問題。 – marsbar

+0

請發佈錯誤信息的*完整*文本。 –

回答

0

這些查詢沒有辦法導致外鍵約束。

但是,您應該爲您的表定義主鍵,即使它是複合鍵。

如果您想冒險進入「良好」數據庫設計領域,您的數據庫也應該規範化,並由團隊,部門和城市的單獨表格組成。 雖然這可能超出了您的任務範圍。

+0

有沒有辦法解決它,所以它不會給我的錯誤,或任何想法,爲什麼它會給我的錯誤? – marsbar