제목 | [예제] 엑티브 레코드 기초 사용 | ||
---|---|---|---|
글쓴이 | ci세상 | 작성시각 | 2009/08/23 12:57:16 |
|
|||
엑티브 레코드를 쓰면 좋은점 1. DB 방식 단 1초만에 해결 => mysql 을 사용하다가 mssql 및 오라클로 갈아타는데 쿼리문 수정이 불필요 어댑터 설정만 간단히 바꿔주면 끝~~ 2. 심플한 코딩 => 10줄에 코딩할것을 단 2줄로도 해결 가능 3. 해석이 쉽다 => 엑티브레코드 메뉴얼만 익히면 어떠한 쿼리문도 쉽게 해석이 가능 4. 보안걱정 뚝! => 이스케이프 처리 및 모델파일을 암호화 처리 함으로써 쿼리 유출 방지 가능 메뉴얼 http://codeigniter-kr.org/user_guide/database/active_record.html DB 스키마 -- -- 테이블 구조 `exampletable` -- CREATE TABLE IF NOT EXISTS `exampletable` ( `id` int(11) NOT NULL auto_increment, `name` varchar(20) NOT NULL, `current_timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ; -- -- 테이블의 덤프 데이터 `exampletable` -- INSERT INTO `exampletable` (`id`, `name`, `current_timestamp`) VALUES (1, 'test1', '2009-08-23 12:41:21'); DB 접속설정 \system\application\config\database.php $db['default']['hostname'] = "localhost"; $db['default']['username'] = "root"; $db['default']['password'] = "apmsetup"; $db['default']['database'] = "test"; $db['default']['dbdriver'] = "mysql"; $db['default']['dbprefix'] = ""; $db['default']['pconnect'] = TRUE; $db['default']['db_debug'] = TRUE; $db['default']['cache_on'] = FALSE; $db['default']['cachedir'] = ""; $db['default']['char_set'] = "utf8"; $db['default']['dbcollat'] = "utf8_general_ci"; 1. 테스트 : 데이터조회 (일반쿼리) <?php class Welcome extends Controller { function Welcome() { parent::Controller(); } function index() { // SQL 쿼리실행 $query = $this->db->query('select id, name from exampleTable'); // 결과 표시 foreach( $query->result() as $row ){ echo $row->id.'] '; echo $row->name; echo "<br>"; } } } /* End of file welcome.php */ /* Location: ./system/application/controllers/welcome.php */2. 테스트 : 데이터삽입 (일반쿼리) <?php class Welcome extends Controller { function Welcome() { parent::Controller(); } function index() { // 등록하는 데이터 $name = "test2"; $SQL = "insert into exampletable (name) values ('$name')"; // SQL쿼리실행 $query = $this->db->query($SQL); } } /* End of file welcome.php */ /* Location: ./system/application/controllers/welcome.php */ 3. 테스트 : 데이터조회 (엑티브레코드) <?php class Welcome extends Controller { function Welcome() { parent::Controller(); } function index() { // SQL 쿼리실행 $this->db->select('id, name'); $query = $this->db->get('exampleTable'); // 결과 표시 foreach( $query->result() as $row ){ echo $row->id.'] '; echo $row->name; echo "<br>"; } } } /* End of file welcome.php */ /* Location: ./system/application/controllers/welcome.php */4. 테스트 : 데이터삽입 (엑티브레코드) <?php class Welcome extends Controller { function Welcome() { parent::Controller(); } function index() { // 등록하는 데이터 $name = "test2"; $this->db->set('name', $name ); $this->db->insert('exampleTable'); } } /* End of file welcome.php */ /* Location: ./system/application/controllers/welcome.php */ 참조 : http://j2k.naver.com/j2k_frame.php/korean/blog.promob.jp/fri/2009/04/codeigniter-1.html#more |
|||
다음글 | CI 파일 업로드 버그 (4) | ||
이전글 | [팁] row 갯수파악하여 오류방지코드 | ||
변종원(웅파)
/
2009/08/25 16:20:14 /
추천
0
액티브 레크드 쓰면 왜 좋다? 가 한줄 들어가 있으면 금상첨화일 것 같습니다. ^^
|
ci세상
/
2009/08/25 16:34:41 /
추천
0
제가 이해하는 장점을 여러줄 써보았습니다.^^
|
변종원(웅파)
/
2009/08/25 16:35:34 /
추천
0
와우~ 교과서입니다. ^^ |
ci세상
/
2009/08/25 17:02:21 /
추천
0
와우 ~~ 제대로 이해한거네요 ㅎㅎ
|