2017-04-09 129 views
1

將數據插入到'tbl_rate'表後,如何將'參賽者'表中的'已提交'字段插入或更改爲'1'?如何在將值插入到另一個表中後將值插入另一個表中

表 'tbl_rate'

--------------------------------- 
rate_id judge_id cont_id score 
--------------------------------- 
14  | 36  |  5 | 10 
--------------------------------- 

表 '選手'

id event_id name gender address date_created submitted 
------------------------------------------------------------ 
5  | 25 |john doe |male |Texas | 2017-03-06| 0 
------------------------------------------------------------ 

WHERE 'id' in 'contestants' table is foreign key in 'cont_id' on 'tbl_rate' 

回答

1

讓兩個單獨的查詢,一個用於tbl_rate(插入),另一個是contestants(更新)和順序,即運行首先運行tbl_rate,然後運行第二個查詢。

您也可以使用事務維護數據完整性。

+0

它工作謝謝!!但是有不同的評委來評選參賽選手,所以如果有超過1名評委對特定選手進行評分 ,我應該怎麼做? – ynnhoj24

+0

使用ON INSERT AFTER觸發器更新另一個表。 –

+0

©ynnhoj24,你的意思是多位評委中的一位評委會評分,或者多名評委評分一次。如果多個評委會評價一場比賽,那麼你需要在tbl_rate中插入儘可能多的記錄。與此相同的評委cont_id – manian

0

請嘗試下面的代碼,

$sql = "INSERT INTO tbl_rate (judge_id, cont_id, score) VALUES ('".$judge_id."', '".$cont_id."', '".$score."')"; 

if ($conn->query($sql) === TRUE) { 
    $sql = "UPDATE contestants SET submitted=1 WHERE id=".$cont_id; 
    if ($conn->query($sql) === TRUE) { 
    echo "Record updated successfully"; 
    } else { 
    echo "Error updating record: " . $conn->error; 
    } 
} else { 
    echo "Error: " . $sql . "<br>" . $conn->error; 
} 

和您的查詢之前定義變量

相關問題