简体   繁体   English

MySql查询浏览器:alter table for foreign key

[英]MySql query browser: alter table for foreign key

how do I make message_id a foreign key so that it's one-to-many between comments and messages? 如何使message_id成为外键,以便它在注释和消息之间是一对多的? (One message can have many comments.) (一条消息可以有很多评论。)

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$ 

I'm using the MySql query browser and see: 我正在使用MySql查询浏览器并查看:

在此输入图像描述

While I can enter SQL either from the query browser or command line, I'm not very familiar with it. 虽然我可以从查询浏览器或命令行输入SQL,但我对它并不熟悉。 I would prefer to use the GUI query browser, if possible, for this. 如果可能的话,我更愿意使用GUI查询浏览器。

Should do the trick: 应该做的诀窍:

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

As one could tell from reading the MySQL documentation . 从阅读MySQL文档可以看出。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM