ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [CodeIgniter] 데이터베이스(Database) 쿼리 실행 및 결과 생성
    프로그래밍/CodeIgniter 2018. 5. 29. 14:23

    ▶CodeIgniter 데이터베이스(Database) 쿼리 실행 및 결과 생성



    ▶설명


    이전에 자세히 설명하지 않았던, 쿼리 실행 및 결과 생성에 대해 작성하도록 하겠습니다.

    자주 사용하는 내용만 정리할 것이기 때문에, 자세한 내용은 아래를 참고하시기 바랍니다.


    ▶쿼리 실행



    단순히 쿼리 실행하는 것은 간단합니다.


    query() 함수

    예시

    $this->db->query('SELECT id, name FROM members');


    특징

    • 데이터를 읽어오는 쿼리 실행시 결과 객체를 반환합니다.
    • 결과 객체쿼리 결과 생성에서 사용할 수 있습니다.
    • 입력과 수정 쿼리를 실행하면 성공 여부에 따라 TRUE나 FALSE를 반환합니다.


    query() 결과를 변수에 할당

    $query = $this->db->query('SELECT id, name FROM members');


    ▶쿼리 결과 생성


    쿼리 결과 생성은 실행한 쿼리에 데이터를 실제로 사용하기 위해 필요한 작업입니다.

    쿼리 결과를 생성하는데 사용하는 방법 중 주로 사용하는 것만 정리하였습니다.


    result() 함수

    예시

    $query = $this->db->query("SELECT id, name FROM members");
    foreach ($query->result() as $row) { echo $row->id; echo $row->name; }


    특징

    • 쿼리 결과를 객체 배열로 반환합니다.
    • 실패 시에는 빈 배열을 반환합니다.


    바로 결과 받기

    $result = $this->db->query("SELECT id, name FROM members")->result();
    foreach ($result as $row) { echo $row->id; echo $row->name; }

    위에처럼 사용할 수도 있습니다.


    result_array() 함수

    예시

    $query = $this->db->query("SELECT id, name FROM members");
    foreach ($query->result_array() as $row) { echo $row['id']; echo $row['name']; }


    특징

    • 쿼리 결과를 배열로 반환합니다.
    • 실패 시에는 빈 배열을 반환합니다.

    result_array() 함수

    예시

    $query = $this->db->query("SELECT id, name FROM members");
    foreach ($query->result_array() as $row) { echo $row['id']; echo $row['name']; }


    특징

    • 쿼리 결과를 배열로 반환합니다.
    • 실패 시에는 빈 배열을 반환합니다.


    num_rows() 함수

    예시

    $query = $this->db->query("SELECT id, name FROM members");
    echo $query->num_rows();


    특징

    • 쿼리 결과열의 갯수를 반환합니다.


    row() 함수

    예시

    $query = $this->db->query("SELECT id, name FROM members");
    if ($query->num_rows() > 0) { $row = $query->row(); echo $row->id; echo $row->name; }


    특징

    • 한 줄의 결과를 반환합니다.
    • 쿼리가 한 줄 이상인 경우 첫번째 줄만 반환합니다.
    • 결과는 객체(object)로 반환합니다.
    • 특정열의 결과를 받고 싶다면, 첫 번째 파라미터에 열 번호를 전달합니다.


    2번째 열 가져오기

    $query = $this->db->query("SELECT id, name FROM members");
    if ($query->num_rows() > 0) { $row = $query->row(2); echo $row->id; echo $row->name; }


    row_array() 함수

    예시

    $query = $this->db->query("SELECT id, name FROM members");
    if ($query->num_rows() > 0) { $row = $query->row_array(); echo $row['id']; echo $row['name']; }


    특징

    • row() 함수와 동일하지만 배열(array)로 결과를 반환합니다.


    ▶마치며


    이 외에도 여러 함수가 있지만, 자세한 사항은 매뉴얼을 참고 바랍니다.

    댓글

Designed by Tistory.