2016-03-21 4 views
0

私はSQLに新しく、いくつかの簡単なテーブル作成ステートメントを試していますが、EMPLOYEEGROUPテーブルの外部キーに問題があります。以下は、私はそれを解決することができないように私EMPLOYEEGROUP_FK2文を使用して、いくつかの問題があり、私のcreate table文SQL 5.6外部キーステートメントのエラー

CREATE TABLE `User` (
`Userid` int(11) NOT NULL AUTO_INCREMENT, 
`Username` VARCHAR(15) NOT NULL, 
`Password` VARCHAR(15) NOT NULL, 
PRIMARY KEY (Userid) 
); 

CREATE TABLE `Group` (
`GroupID` int(11) NOT NULL AUTO_INCREMENT, 
`GroupName` VARCHAR(15) NOT NULL, 
PRIMARY KEY (GroupID) 
); 

CREATE TABLE `EMPLOYEEGROUP` (
`EmployeeID` int(11) NOT NULL, 
`AssignedGrp` int(11) NOT NULL, 
CONSTRAINT EMPLOYEEGROUP_FK1 FOREIGN KEY (EmployeeID) REFERENCES User (Userid), 
CONSTRAINT EMPLOYEEGROUP_FK2 FOREIGN KEY (AssignedGrp) REFERENCES Group (GroupID) 
); 

の一部です。どんな助けもありがとう。ありがとうございます

答えて

2

In mysql GROUPは予約済みのキーワードです。グループを表名 として使用しています。テーブル名では ``でグループを書く。グループテーブルの参照を取るときには、 ``なしでグループを書くことになります。単純にグループ名に ``を追加してください それは私のシステムでうまくいってあなたのシステムも実行する

CREATE TABLE `User` (
`Userid` int(11) NOT NULL AUTO_INCREMENT, 
`Username` VARCHAR(15) NOT NULL, 
`Password` VARCHAR(15) NOT NULL, 
PRIMARY KEY (Userid) 
); 

CREATE TABLE `Group` (
`GroupID` int(11) NOT NULL AUTO_INCREMENT, 
`GroupName` VARCHAR(15) NOT NULL, 
PRIMARY KEY (GroupID) 
); 

CREATE TABLE `EMPLOYEEGROUP` (
`EmployeeID` int(11) NOT NULL, 
`AssignedGrp` int(11) NOT NULL, 
CONSTRAINT EMPLOYEEGROUP_FK1 FOREIGN KEY (EmployeeID) REFERENCES User (Userid), 
CONSTRAINT EMPLOYEEGROUP_FK2 FOREIGN KEY (AssignedGrp) REFERENCES `Group` (GroupID) 
); 
+0

ありがとう!私は過去数時間このことを試していましたが、命名問題は私には起こりませんでした。 – 1cyf1r3