sql >> Databasteknik >  >> RDS >> Mysql

Anropar lagrad procedur i kodantändare

Jag följer herr Tim Brownlaws blogg:
http://ellislab. com/forums/viewthread/73714/#562711

Ändra först application/config/config.php, rad 55.

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

Lägg sedan till följande i mysqli_result.php som av någon konstig anledning saknar detta kommando (under /system/database/drivers/mysqli/mysqli_result.php).

/**
  * Read the next result
  *
  * @return  null
  */   
 function next_result()
 {
     if (is_object($this->conn_id))
     {
         return mysqli_next_result($this->conn_id);
     }
 }

Lägg sedan till $result->next_result() i din modell .

Nedan är mitt exempel.

function list_sample($str_where, $str_order, $str_limit)
{
   $qry_res    = $this->db->query("CALL rt_sample_list('{$str_where}', '{$str_order}', '{$str_limit}');");

   $res        = $qry_res->result();

   $qry_res->next_result(); // Dump the extra resultset.
   $qry_res->free_result(); // Does what it says.

   return $res;
}


  1. Mysql Real Escape String PHP-funktion Lägger till \ till My Field Entry

  2. Reverse engineering (oracle) schema till ERD

  3. Hur kontrollerar man om en variabel är NULL och ställer in den med en MySQL-lagrad procedur?

  4. Lägger till "seriell" till befintlig kolumn i Postgres