질문 Q #18445
ci 2.x대에서는 쿼리문을 생성한후에 실행하지않고 쿼리문을 반환하는 함수가 있을까요?
정수리 2017-08-07 10:05:40

CI에 3.x대에는 

 

$this->db->get_compiled_select()

 

이 함수가 있어 쿼리문을 생성 후 실행하지않고 생성한 쿼리문을 반환하던데

 

2.x대에는 위의 함수와 비슷한 기능을 하는 함수가 없을까요?

 

메뉴얼을 확인해보았는데 없더라구요..

 

2점대에서는 쿼리문만 만들시에는 그냥 직접 만드는 방법밖에 없을까요?

답변 3
#1 전상민 2017-08-07 10:56:36

http://codeigniter-kr.org/user_guide_2.1.0/database/helpers.html

$this->db->last_query();

#2 정수리 2017-08-07 11:29:13

@전상민

답변감사합니다.

$this->db->last_query(); 이쿼리의 경우 마지막에 실행한 쿼리를 반환하는거 아닌가요?

제가 구현할려는 기능은 쿼리문만을 생성하여 DB나 파일에 저장할려고 합니다. 쿼리실행은 안하구요.

 

#3 전상민 2017-08-07 16:01:21

쿼리 확인을 위한 용도면 select 쿼리가 실행된 직후에 last_query(); 메서드를 이용하시면 되고,

동적으로 셀렉트 쿼리문을 만들어내고 싶은거면 아래 링크 참고해보세요.

https://stackoverflow.com/questions/9010128/echo-query-before-execution-and-without-execution-in-codeigniter-active-record