请帮助我。我收到以下消息时,我尝试运行SQL命令:MySQL语法错误1064行194添加多对多关系的外键
ERROR 1064 (42000) at line 194: 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 '( ADD CONSTRAINT VFSGRPUSR_REF_VFSGRP FOREIGN KEY (VFSGRP) REFERENCES `VFS' at line 1
我想实现一个多到多的关系。
----------------------------------------------------------------------------------------
DROP TABLE IF EXISTS VFSGRPUSR
;
CREATE TABLE VFSGRPUSR
( VFSGRP
INTEGER REFERENCES VFSGRP(VFSGRP_ID), VFSUSR
INTEGER REFERENCES VFSUSR(VFSUSR_ID), PRIMARY KEY (VFSGRP
, VFSUSR
) )ENGINE=InnoDB DEFAULT CHARSET utf8;
----------------------------------------------------------------------------------------
DROP TABLE IF EXISTS VFSUSR
;
CREATE TABLE VFSUSR
( VFSUSR_ID
INTEGER NOT NULL auto_increment, DEPARTMENT
INTEGER, FIRSTNAME
VARCHAR(255) NOT NULL, SURNAME
VARCHAR(255) NOT NULL, LOGIN
VARCHAR(255) NOT NULL, PASSWORD
BLOB, TOKEN
BLOB, PRIMARY KEY (VFSUSR_ID
), CONSTRAINT VFSUSR_REF_DEPARTMENT FOREIGN KEY (DEPARTMENT) REFERENCES DEPARTMENT (DEPARTMENT_ID) )ENGINE=InnoDB DEFAULT CHARSET utf8;
----------------------------------------------------------------------------------------
DROP TABLE IF EXISTS VFSGRP
;
CREATE TABLE VFSGRP
( VFSGRP_ID
INTEGER NOT NULL auto_increment, GROUPNAME
VARCHAR(255) NOT NULL, PRIMARY KEY (VFSGRP_ID
) )ENGINE=InnoDB DEFAULT CHARSET utf8;
----------------------------------------------------------------------------------------
ALTER TABLE VFSGRPUSR( ADD CONSTRAINT VFSGRPUSR_REF_VFSGRP FOREIGN KEY (VFSGRP) REFERENCES VFSGRP
(VFSGRP_ID) )ENGINE=InnoDB DEFAULT CHARSET utf8;
ALTER TABLE VFSGRPUSR( ADD CONSTRAINT VFSGRPUSR_REF_VFSUSR FOREIGN KEY (VFSUSR) REFERENCES VFSUSR
(VFSUSR_ID) )ENGINE=InnoDB DEFAULT CHARSET utf8;
日食奇怪。我已经尝试过,但似乎可能月食不喜欢我。也许隐藏的字符!非常感谢你。 – weedlight 2012-04-19 15:01:51
我很高兴你能工作。考虑如果答案对你有帮助,则将其标记为已接受。 – 2012-04-19 15:02:59