我有3个表..
Books 表有 ISBN  NAME  NO 三列
Users 表有 userNO  date  sex 三列
Info 表有 ISBN  userNo  infodate 三列
其中ISBN是Books 的PRIMARY KEY
    userNO是Users 的 PRIMARY KEY
    Info中包含 ISBN 和 userNO我想把3个表进行主外键连接..
如果是2个表的话,我会。
代码如下:
ALTER TABLE Books
ADD FOREIGN KEY (ISBN)
REFERENCES Info(ISBN)
可三个表的怎么搞啊??

解决方案 »

  1.   

    create table info
    (
    ISBN datatype,
    userNO datatype,
    infodate datetime,
    CONSTRAINT fk_info_books FOREIGN KEY (ISBN) REFERENCES Books(ISBN),
    CONSTRAINT fk_info_Users FOREIGN KEY (userNO) REFERENCES Users(userNO))其实不存在什么三表的外键,因该是两个两表间的外键约束。这个你如果有ER图就一目了然了。
      

  2.   

    第三个表用联合键试试create table Info (
    ISBN INT,
    userNo INT,
    infodate TIMESTAMP
    );alter   table   Info 
    add   unique key(ISBN,userNo)
    references   
    Users (userNo);  
      

  3.   

    楼上的是建表的时候用的,应该换成alter tableALTER table `info`
    ADD CONSTRAINT  fk_info_books FOREIGN KEY (ISBN) REFERENCES Books(ISBN);ALTER table `info`
    ADD CONSTRAINT fk_info_Users FOREIGN KEY (userNO) REFERENCES Users(userNO);