如何在现有表中添加外键?

Stu*_*ent 0 php mysql zend-framework alter-table

我有三张桌子:

1.用户(id,name,birthdate) - PRIMARY KEY('id')

2.联系(身份证,联系人,已验证) - 主要密钥('id')

3. UserContact(User_id,Contact_id) - 没有主键或Foriegn键

问题是在创建UserContact表时我不关心主键或外键.因此,我在zend框架中的UserContact表中插入记录时遇到以下错误.

表必须具有主键,但未找到任何主键

现在我想创建一个MySql脚本,它改变UserContact表,并将User_idContact_id作为来自User和Contact表的外键.如何编写这个脚本.我正在使用phpMyAdmin.

谢谢

Dev*_*art 5

ALTER TABLE语法

添加外键 -

ALTER TABLE UserContact
  ADD CONSTRAINT FK_UserContact_User FOREIGN KEY (user_id) REFERENCES user(id);
ALTER TABLE UserContact
  ADD CONSTRAINT FK_UserContact_Contact FOREIGN KEY (contact_id) REFERENCES user(id);
Run Code Online (Sandbox Code Playgroud)

添加主键 -

ALTER TABLE UserContact
  ADD PRIMARY KEY (User_id, Contact_id);
Run Code Online (Sandbox Code Playgroud)