簡體   English   中英

MySQL 5.7引用錯誤

[英]MySQL 5.7 referencing error

我有兩個表departmentemployee 我想使用MySQL參考employee department 這是我的以下代碼和錯誤消息:

mysql> CREATE TABLE DEPARTMENT (DEPTNO int (4) NOT NULL,
    -> DNAME CHAR (15), DFLOOR int(1),
    -> PRIMARY KEY (DEPTNO) );
Query OK, 0 rows affected (0.10 sec)

mysql> CREATE TABLE EMPLOYEE (EMPNO int (4) NOT NULL,
    -> ENAME CHAR (10),
    -> MGR CHAR (9),
    -> DEPTNO int (4) NOT NULL,
    -> SAL float(7,2),
    -> JOB_STATUS float(7,2),
    -> PRIMARY KEY (EMPNO)
    -> FOREIGN KEY (DEPTNO) REFERENCES department (DEPTNO));

這是錯誤消息:

錯誤1064(42000):您的SQL語法有錯誤; 在第8行的“ FOREIGN KEY(DEPTNO)參考部門(DEPTNO))附近,查看與您的MySQL服務器版本相對應的手冊以使用正確的語法。

您需要在主鍵和外鍵定義之間放置一個逗號( , ):

CREATE TABLE EMPLOYEE (
  EMPNO INT(4) NOT NULL,
  ENAME CHAR(10),
  MGR CHAR(9),
  DEPTNO INT(4) NOT NULL,
  SAL FLOAT(7, 2),
  JOB_STATUS FLOAT(7, 2),
  PRIMARY KEY (EMPNO), -- here
  FOREIGN KEY (DEPTNO) REFERENCES department (DEPTNO)
);

根據CREATE TABLE語法的文檔 ,定義(例如,列,主鍵,外鍵)必須用,分隔:

 CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name [(create_definition,...)] 

暫無
暫無

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

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