如何使message_id为外键,以使其在注释和消息之间一对多? (一条消息可以有很多评论。)

mysql> use nntp;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables;
+----------------+
| Tables_in_nntp |
+----------------+
| comments       |
| messages       |
+----------------+
2 rows in set (0.00 sec)

mysql> describe comments;
+------------+---------+------+-----+---------+-------+
| Field      | Type    | Null | Key | Default | Extra |
+------------+---------+------+-----+---------+-------+
| id         | int(11) | NO   | PRI | NULL    |       |
| message_id | int(11) | NO   |     | NULL    |       |
| comment    | text    | NO   |     | NULL    |       |
| stamp      | date    | NO   |     | NULL    |       |
+------------+---------+------+-----+---------+-------+
4 rows in set (0.00 sec)

mysql> describe messages;
+-----------+---------+------+-----+---------+-------+
| Field     | Type    | Null | Key | Default | Extra |
+-----------+---------+------+-----+---------+-------+
| id        | int(11) | NO   | PRI | NULL    |       |
| newsgroup | text    | NO   |     | NULL    |       |
| subject   | text    | NO   |     | NULL    |       |
| content   | text    | NO   |     | NULL    |       |
| number    | text    | NO   |     | NULL    |       |
+-----------+---------+------+-----+---------+-------+
5 rows in set (0.00 sec)

mysql> quit
Bye
thufir@dur:~/NetBeansProjects/USENET$


我正在使用MySql查询浏览器,请参阅:



虽然我可以从查询浏览器或命令行输入SQL,但我对此并不十分熟悉。如果可能的话,我希望使用GUI查询浏览器。

最佳答案

应该做到这一点:

ALTER TABLE comments ADD FOREIGN KEY (message_id) REFERENCES messages(id);


从阅读MySQL documentation可以看出。

08-05 07:15