Estoy intentando depurar algún código en mi primera aplicación CodeIgniter seria y no puedo encontrar dónde puedo obtener simplemente el SQL sin procesar que acaba de generar mi código ActiveRecord.Obteniendo consultas SQL sin procesar en CodeIgniter 1.7
$where = 'DAY(`datetime_start`) = '. date('d',$day) .' AND ';
$where .= 'MONTH(`datetime_start`) = '. date('m',$day) .'';
$this->db->from('events')->where($where);
$result = $this->db->get();
¡Gracias por la ayuda!
_compile_select() está marcado como protegido en las versiones más recientes de CodeIgniter (es probable que no haya sido declarado protegido antes para compatibilidad con PHP4). Entonces, puede establecer el límite en 1 para evitar ejecutar una consulta grande y luego llamar a last_query(), o puede usar el reflejo, pero la primera opción es preferible. –
También: Parece que get_compiled_select() estará disponible en una versión futura de CodeIgniter; ya está en la rama de desarrollo (https://github.com/EllisLab/CodeIgniter/blob/develop/system/database/DB_query_builder.php). Copié ese método a DB_active_rec y funcionó bien, incluso en conjunto con esta biblioteca: https://github.com/NTICompass/CodeIgniter-Subqueries –