簡體   English   中英

如何在csv查詢的sql查詢中插入last_insert_id?

[英]how to insert last_insert_id in sql query of csv query?

我正在使用Codegniter框架將csv數據導入mysql數據庫。 我的數據庫有兩個表promotion和promotion_product.promotion表是3個字段,名稱分別為promotion_id,name,start_date和end_date。promotion_id是促銷表的主鍵。promotion_id是自動遞增。promotion_product表是5個字段,id,promotion_id,sku,price ,地圖。 Promotion_id是此表的外鍵。 我正在此表中導入csv文件.csv字段是sku,價格和地圖。我沒有獲取如何插入promotion_porduct表的promotion_id。我正在使用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;
        }

您必須手動執行。 首先插入數據庫,然后您將獲得last_insert_id,然后讀取CSV文件並創建CSV數組,last_insert_id將該數組轉儲到數據庫中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM