错误编号:2006,MySQL服务器已经离开代码点火器sql查询


Error Number: 2006, MySQL server has gone away codeigniter sql query

我正在使用codeigniter来运行我的查询,当我试图获取新订单时,我收到了这个错误——数据库中只有2到3个小翻译要插入。我在hostgator上使用共享主机,因此无法更改最大数据包大小。(当前设置的最大允许数据包-16777216)

我正在使用的这个查询-

foreach($data_orders as $key=>$value){
    $order_id=trim($value['order_id']);
    $amount_paid=trim($value['amount_paid']);
    $query = $this->db->query("select * from ama_orders 
                              where order_id='".$order_id."' 
                              and amount_paid LIKE  '".$amount_paid."'");  
    // Getting error on this line
    if ($query->num_rows > 0) {
        unset($data_orders[$key]);      
    }
}

我在这个代码上得到的另一个错误

$sql_check= "SELECT order_status from ama_orders where order_id='$check_order_id'";
$query = $this->db->query($sql_check); // Getting error on this line
$ordertemp = array();
if ($query->num_rows > 0) {
    $ordertemp = $query->result_array();
    if($ordertemp[0]['order_status']=='Unshipped'){
        $update_sql= "UPDATE ama_orders SET order_status='Dispatched'
                     where order_id='$check_order_id'";
        $this->db->query($update_sql); // And Getting error on this line
     }
 }

如果有人知道我做错了什么。请帮我解决这个问题。

您可以尝试在database.php配置中禁用持久连接(提供了您不需要它们的事实)-这有时是导致此错误的原因:

$db['default']['pconnect'] = FALSE;

请参阅https://ellislab.com/codeigniter/user-guide/database/configuration.html有关更多信息,