2015-01-04 61 views
0

我試圖用jsp和mySql數據庫創建一個forum卡住創建論壇的答案表?

所以,基本上我陷入了爲桌子創建設計。

我有這個表:

create table if not exists thread_question(
question_id INT NOT NULL auto_increment, 
person_name VARCHAR(100) NOT NULL, 
question_title VARCHAR(500) NOT NULL, 
question VARCHAR(100000) NOT NULL, 
question_dateTime VARCHAR(100) NOT NULL, 
PRIMARY KEY(question_id) 
); 

create table if not exists thread_answer(
answer_id INT NOT NULL auto_increment, 
person_name_answer VARCHAR(100) NOT NULL, 
answer VARCHAR(100000) NOT NULL, 
answer_dateTime VARCHAR(100) NOT NULL, 
PRIMARY KEY(answer_id) 
); 

這兒如果我獲取所有這些問題的答案,它是根據所有問題一樣的答案。在這裏,我卡住了..

所以,如何顯示與單獨的問題的答案,以便它會顯示不同的問題。希望你明白我想說的話。

當然,幫助將不勝感激!

+0

這兩個表是如何鏈接的?你怎麼知道哪個答案屬於哪個問題?您可能需要將thread_answer中的外鍵添加到thread_question的question_id字段中。 – SMA 2015-01-04 10:21:32

+0

好吧..終於我明白了,我需要在答案表中插入問題ID ......但是,我將如何在答案表中插入問題ID?任何想法..? – 2015-01-04 10:24:27

+0

alter table statement .. see [this](http://dev.mysql.com/doc/refman/5.1/en/alter-table.html)如果已經創建了表,那麼添加與問題表中提到的相同的字段定義添加引用問題(question_id) – SMA 2015-01-04 10:25:17

回答

0

你需要連接你的答案和你的問題。

所以,你需要定義thread_answer表更是這樣的:

create table if not exists thread_answer(
    answer_id INT NOT NULL auto_increment, 
    question_id INT NOT NULL references thread_question(question_id), 
    person_name_answer VARCHAR(100) NOT NULL, 
    answer VARCHAR(100000) NOT NULL, 
    answer_dateTime VARCHAR(100) NOT NULL, 
    PRIMARY KEY(answer_id) 
); 

當存儲記錄在該表中,你必須包括正在回答問題的question_id。當您在jsp中準備答案表單時,請確保您將question_id編號包含在隱藏字段中。

當您檢索問題的所有答案時,可以將question_id = NNNN添加到您的WHERE部分,然後您將得到該問題的答案。