我想避免DB中的重復條目。
<醇>$lead = $CI-> db-> get_where(db_prefix(). 'leads', ['fbid' => $sender])。)
if ($lead-> num_rows() == 0) {
$CI->social_model-> create($sender);
}
- 在mysql中,我把UNIQUE引數設定為fbid. 。
問題是,有時facebook會在同一時間發送相同的查詢,而我的php檢查因為這個原因而失敗。我想知道是否有什么方法可以避免在mysql端對同時發送的查詢進行重復。(或任何其他方法都歡迎)
uj5u.com熱心網友回復:
你的問題是,你在fbid和id列上有一個唯一鍵。因此,當你在表中插入一個新行時,你有一個id和fbid的唯一組合,因為當你再次插入相同的資料時,你得到一個更新的id值,所以約束條件得到滿足。
你的約束應該只包含fbid
或者,當你希望一個fbid有多個條目時,你應該看看在api的回應中是否有其他的值可以用于約束(比如一個時間戳)
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/311011.html
標籤:
下一篇:Codeigniter4影像水印
