4. CodeIgniter 적용하려는 이유
• 가벼운 Framework
• 다양한 DB 지원
- MySQL
- MSSQL
- Postgres
- Oracle
- SQLite
5. CodeIgniter 적용하려는 이유
• MySQL MSSQL DB 전환이 비교
적 쉬움
• 소스코드의 복잡성을 낮춤
• DB Query 생성과 수정을 소스코드 상에서
쉽게 대응
• 인수인계 비용을 낮춤
6. DB Query 방법 차이
• 기존의 소스 ( 목록 출력 )
$sql = getUserListSql($params, $pi, $ps);
executePageQuery_mysql($conn,$sql,$cnt,$pi,$ps);
function getUserListSql($params, $page, $pageSize) {
…..
$sql = "SELECT
*
FROM account WHERE 1=1 ";
$sql .= " ORDER BY ".$orderBy." ".$ordering." LIMIT ".$first.",
".$end;
return $sql;
}
7. DB Query 방법 차이
• CodeIgniter 관련 소스
$query = $this->db->order_by($orderBy, $ordering);
$query = $this->db->limit($first, $end);
$query = $this->db->get_where('account');
$json_ret = json_encode($query->result());
# 확인
$LastSQL = $this-> db- >last_query();
echo $LastSQL;
>>> SELECT * FROM `account` ORDER BY `sn` ASC
8. DB Connection 과 Close
• Connection
- 자동연결 (auto connect)
application/config/autoload.php
- 수동연결
$this->load->database();
• Close
CodeIgniter 가 자동으로 db 연결을 닫아줌
- 수동연결 닫기
$this->db->close();
9. DB Query 결과 json 처리
$query = $this->db->query("select now() as NOWDATE; ");
$json_ret = json_encode($query->result());
echo $json_ret;
[ 결과 ]
[{"NOWDATE":"2016-01-19 10:32:03"}]