2012-07-26 3 views
0

어떻게 message_id를 외래 키로 만들어 주석과 메시지 사이에 일대 다 대응이 가능합니까? (한 메시지가 여러 의견이있을 수 있습니다.)MySql 쿼리 브라우저 : 외래 키에 대한 테이블 변경

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 
[email protected]:~/NetBeansProjects/USENET$ 

나는 MySQL의 쿼리 브라우저를 사용하여 볼 해요 :

enter image description here

을 나도 쿼리 브라우저 또는 명령 줄에서 SQL을 입력 할 수 있습니다 동안을, 나는 그것에 익숙하지 않다. 가능한 경우 GUI 쿼리 브라우저를 사용하는 것이 좋습니다. 하나는 MySQL documentation를 읽고 말할 수있는 것처럼

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

:

+0

쿼리 브라우저 UI에서 이해할 수없는 점은 무엇입니까? 귀하의 스크린 샷은 당신이 어디에 있는지 알 수 있다는 것을 보여줍니다 ... 단지 외국 컬럼을 채울 필요가 있습니다 ... – Romain

+0

생성 된 SQL에 대한 "대답"참조 (오류는 기록하지 않았습니다). – Thufir

답변

2

트릭을 할해야합니다.

관련 문제