2017-02-12 5 views
0

이 특정 오라클 쿼리입니다 : -Codeigniter 활성 레코드에 sequence.nextval 값을 삽입하는 방법은 무엇입니까?

이제
INSERT INTO tbl_admin 
     (admin_id, admin_username, admin_email, 
     admin_password, admin_fname, admin_lname, admin_type) 
VALUES 
     ('TBL_ADMIN_SEQUENCE.nextval', 'saswat2', '[email protected]', 
     '$2a$16$y61NYSwQXSRA4m4GoRWJ5OhthFzfZ9e6yp8QcVhBNgSQK16Q.VkXq', 'Saswat', 'Routroy', 0); 

, 나는이 코드를 쓰고, CodeIgniter의 활동 기록을 사용하여이 quesry를 실행하려면 : -

이제
$data = array(
     $this->identifier_field => 'TBL_ADMIN_SEQUENCE.nextval', 
     $this->username_field => $username, 
     $this->email_field => $email, 
     $this->password_field => $password, 
     $this->first_name_field => $first_name, 
     $this->last_name_field => $last_name, 
     $this->type_field => intval($type), 
    ); 

    // If inserting data fails 
    if (! $this->oracleDB->insert($this->user_table, $data)) 
    { 
     // Return false 
     return FALSE; 
    } 

이 나에게 오류를주고있다 : - enter image description here

어떻게 해결할 수 있습니까? 내가 ->query() 함수를 사용하여 쿼리를 작성할 수 있다는 것을 알고 있지만 활성 레코드를 사용하여이를 수행하려고합니다.

참고 : - Oracle 10g express edition을 사용하고 있습니다.

답변

1
$this->db->set('status', $status); 
$this->db->set('ID', "SEQ_ID.NEXTVAL", FALSE); //false escape 
$this->db->insert('mytable'); 
+2

이 질문에 대한 답변이지만이 코드가 수행해야하는 텍스트 몇 줄을 실제로 설명하는 것이 좋습니다. –