2017-03-11 35 views
0

我需要执行这两个查询,但插入将发生在一个表上(仅限第一个查询)。如果我先把query9,它会执行,否则query3。我怎样才能将数据一次插入到两个表中?

$query9 = $con->prepare("INSERT INTO complete_status (ID, hotel_id, 
floor_id, room_id, pull_chrdsw_status, emergency_status, nurse_callsw_status, cmr_status, foodsw_status, bedside_cancelsw_status ,nurse_distress_status, bcssw_status ,final_status,date1, Time) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,CURRENT_TIMESTAMP,CURRENT_TIMESTAMP)");   
$query9->bind_param("iiiiiiiiiiiii", $ID, $HotelID ,$SectorID, $RoomID, $pull_chrdsw_status, $emergency_status, $nurse_callsw_status, $cmr_status, $foodsw_status,$bedside_cancelsw_status, $nurse_distress_status, $bcssw_status,$statuss); 


if($value->NurseCallSwStats != $Uploadedpkt->RoomStatus[$key]->NurseCallSwStats) 
{ 
    if($DebugMode===TRUE)// Test mode with debugg outputs 
    { 
     echo "<br>"; 
     echo "laundry change"; 
    } 
    $Difference_Flag=TRUE; 
    $nurse_callsw_status = $Uploadedpkt->RoomStatus[$key]->NurseCallSwStats; 
    $query3->execute(); 
    $query9->execute(); 
} 


foreach ($Uploadedpkt->RoomStatus as $key => $value) 
{ 
    $nurse_callsw_status = $Uploadedpkt->RoomStatus[$key]->NurseCallSwStats; 
    $query3->execute(); 
    $query9->execute(); 
} 
+0

寻找存储过程或触发事件!在搜索之后,如果你仍然想要一次又一次地运行这两个查询(这并不坏),你可以很容易地使用InnoDb表和事务来保护你的数据(事务被激活,如果query9失败,query3没有被提交回滚,回滚)MyIsam表不能使用事务。 –

回答

0

您可以创建一个stored procedure包含所有你的查询,然后执行它。

相关问题