sql >> Database >  >> RDS >> Mysql

MySQL-fout - Opdrachten lopen niet synchroon; je kunt deze opdracht nu niet uitvoeren

Heb het antwoord! Het lijkt erop dat het mysql-stuurprogramma van codeigniter fouten bevat bij het afhandelen van opgeslagen procedures.

Ik heb de stuurprogramma's gewijzigd van mysql naar mysqli in de config/database bestand door

. te wijzigen
$db['default']['dbdriver'] = 'mysql';

naar

$db['default']['dbdriver'] = 'mysqli';

Post dat ik de system/database/drivers/mysqli/mysqli_result.php heb gewijzigd bestand en de onderstaande functie toegevoegd

function next_result()
{
  if (is_object($this->conn_id))
  {
      return mysqli_next_result($this->conn_id);
  }
}

en wijzigde het model zoals hieronder

$db = $this->load->database('mailbox',TRUE);
$qry_res = $db->query('Call circle_pending_p()');

echo $db->_error_message();
$res = $qry_res->result_array();

$qry_res->next_result();
$qry_res->free_result();

if (count($res) > 0) {
      return $res;
} else {
      return 0;
}

Dit loste het probleem op!



  1. Op SQLite-expressie gebaseerde index

  2. SQL Server vervangen, alles verwijderen na een bepaald teken

  3. WAAR versus HEBBEN

  4. Voeg 6 uur toe aan de functie now()