2014-12-10 1 views
0

저는 codegniter 프레임 워크를 사용하여 csv 데이터를 mysql 데이터베이스로 가져옵니다. 내 데이터베이스는 두 테이블 승진 및 promotion_product.promotion 테이블이 promotion_id, name, start_date 및 end_date와 같이 3 개의 필드 이름입니다 .promotion_id는 promotion 테이블의 기본 키입니다 .promotion_id는 자동 incremment.promotion_product 테이블은 5 개의 필드 id, promotion_id, sku, price입니다. ,지도. promotion_id는이 테이블의 외래 키입니다. 내가이 table.csv 필드가 SKU, 가격입니다 CSV 파일을 가져 오기 오전 map.i 줬음 last_insert_id.my 코드를 사용하고 promotion_porduct의의 promotion_id을 삽입하는 방법을지고 있지 않다은 다음과 같습니다 :csv 쿼리의 sql 쿼리에서 last_insert_id를 삽입하는 방법은 무엇입니까?

내 모델은 다음과 같습니다

 public function save_csv($data,$data1) { 

      $this->db->insert('promotion', $data1); 
      $insert_id = $this->db->insert_id(); 
      print_r($insert_id); 
      $infile = $data['upload_data']['full_path']; 
      //print_r($infile); 

      $sql = "LOAD DATA INFILE '" . $infile . "' 
          INTO TABLE promotion_product 
          FIELDS TERMINATED BY ',' 
          OPTIONALLY ENCLOSED BY '\"' 
          LINES TERMINATED BY '\r' 
          IGNORE 1 LINES 
          (promotion_id,sku, price, map)"; 
      print_r($sql); 
      $query = $this->db->query($sql); 

      //var_dump($query); 

      return $query; 
     } 
+0

'$ this-> db-> insert_id()'시도해주세요. –

+0

님은 last_id를 받았지만 CSV로드 쿼리에 삽입하는 방법 – pramod24

+0

아, 죄송합니다. 질문을 이해하지 못했습니다. –

답변

0

요 수동으로해야합니다. 데이터베이스에 처음 삽입하면 last_insert_id가 나온 다음 CSV 파일을 읽고 CSV 및 last_insert_id 배열을 만들어 해당 배열을 데이터베이스에 덤프합니다.

관련 문제