단순히 쿼리만 조회하여 결과값을 화면에 파싱하는 경우 Model 에 관련 method를 만들 경우 필요 없는 코드만 발생할 수 있다.
그래서 이번 프로젝트에서는 commonModel을 통해 별도 business logic이 없는 경우 굳이 model 을 건드리지 않아도 controller에서도 호출할 수 있도록 쿼리 호출 공통함수를 제공한다.
단, 이를 위해서는 쿼리는 queryparser에서 사용할 수 있도록 xml로 제작되어 있어야 한다.
queryParser을 통해 controller에서 쿼리 수행 후 결과를 Array 형태로 반환
순번 | 이름 | 설명 | 필수여부 | 기본값 | 세부내용 |
---|---|---|---|---|---|
1 | queryFile | 쿼리xml경로 | 필수 | - | /application/sql 하위의 디렉토리/파일명 (확장자 .xml 제외) |
2 | query | 쿼리 name | 필수 | - | |
3 | paramArr | 쿼리 수행 시 필요한 파라미터 | 선택 | null | array형태로 제공 필요 |
4 | dbName | 대상 DB | 선택 | default | 쿼리 수행 시 참조할 DB (frmework정의에 의한 값 참조 (config/database)) |
쿼리 결과 Array
queryParser을 통해 controller에서 쿼리 수행 후 결과를 Object 형태로 반환
순번 | 이름 | 설명 | 필수여부 | 기본값 | 세부내용 |
---|---|---|---|---|---|
1 | queryFile | 쿼리xml경로 | 필수 | - | /application/sql 하위의 디렉토리/파일명 (확장자 .xml 제외) |
2 | query | 쿼리 name | 필수 | - | |
3 | paramArr | 쿼리 수행 시 필요한 파라미터 | 선택 | null | array형태로 제공 필요 |
4 | dbName | 대상 DB | 선택 | default | 쿼리 수행 시 참조할 DB (frmework정의에 의한 값 참조 (config/database)) |
쿼리 결과 Object
queryParser을 통해 controller에서 쿼리 수행 후 지정된 Row의 결과를 Array 형태로 반환
순번 | 이름 | 설명 | 필수여부 | 기본값 | 세부내용 |
---|---|---|---|---|---|
1 | queryFile | 쿼리xml경로 | 필수 | - | /application/sql 하위의 디렉토리/파일명 (확장자 .xml 제외) |
2 | query | 쿼리 name | 필수 | - | |
3 | paramArr | 쿼리 수행 시 필요한 파라미터 | 선택 | null | array형태로 제공 필요 |
4* | rowNum | 반환한 결과 row 번호 | 선택 | 0 | 미지정시 무조건 첫번째 row의 데이터를 반환 |
5 | dbName | 대상 DB | 선택 | default | 쿼리 수행 시 참조할 DB (frmework정의에 의한 값 참조 (config/database)) |
쿼리 결과 Array (데이터 기준 : 1개 row / n개 column)
queryParser을 통해 controller에서 쿼리 수행 후 지정된 Row의 결과를 Object 형태로 반환
순번 | 이름 | 설명 | 필수여부 | 기본값 | 세부내용 |
---|---|---|---|---|---|
1 | queryFile | 쿼리xml경로 | 필수 | - | /application/sql 하위의 디렉토리/파일명 (확장자 .xml 제외) |
2 | query | 쿼리 name | 필수 | - | |
3 | paramArr | 쿼리 수행 시 필요한 파라미터 | 선택 | null | array형태로 제공 필요 |
4* | rowNum | 반환한 결과 row 번호 | 선택 | 0 | 미지정시 무조건 첫번째 row의 데이터를 반환 |
5 | dbName | 대상 DB | 선택 | default | 쿼리 수행 시 참조할 DB (frmework정의에 의한 값 참조 (config/database)) |
쿼리 결과 Object (데이터 기준 : 1개 row / n개 column)
// 컨트롤러에서 commonModel 이 호출되어 있어야 함 (생성자 혹은 일반 function 내에서 선언) $this->load->model('common_model'); // 아래와 같이 queryParser용 xml의 위치, 사용하기 원하는 쿼리, 파라미터(array형태) 를 지정한다. $dataArr['list'] = $this->common_model->doSimpleQueryArr("account/placeReg", "getPlaceRegList", $param); // 혹시 다른 DB호출을 위해서는 아래와 같이 DB명을 입력하면 된다. (application/config/database.php 정의 참조) $dataArr['list'] = $this->common_model->doSimpleQueryArr("account/placeReg", "getPlaceRegList", $param, 'dev');