将数据从 csv 导入 mysql


Importing data from csv to mysql

嘿伙计们,我是Codeigniter的新手。我正在为这个项目使用编码点火器。我一直在尝试上传一个.csv文件并将其保存到我的表中。但它给了我一个数据库错误。我正在使用PHP的Codeigniter框架。

型:

  public function save_csv($data)
        {
            $infile=$data['upload_data']['full_path'];
            print_r($infile);
            $query = $this->db->query("LOAD DATA INFILE '".$infile."'
                    INTO TABLE promotion_product
                    FIELDS TERMINATED BY ','
                    ESCAPED BY '''' 
                    LINES TERMINATED BY ''r'n'
                    IGNORE 1 LINES
                    ");

            print_r($query);
            return $query;
        } 

控制器:

  public function upload() {
            $image_path = realpath(APPPATH . '../uploads');
             //$file_path =  $image_path.$file_data['file_name'];
            $config['upload_path'] = $image_path;
            $config['allowed_types'] = '*';
            $config['max_size'] = '100';
            $config['max_width'] = '1024';
            $config['max_height'] = '768';
            $this->load->library('upload', $config);
            if (!$this->upload->do_upload()) {
                $error = array('error' => $this->upload->display_errors());
                $this->load->view('upload_form', $error);
            } else {
                $data = array('upload_data' => $this->upload->data());
                //$pramod=$data[upload_data][full_path];
                //print_r($pramod);
                $this->load->view('upload_success', $data);
                $this->usermodel->save_csv($data);
            }
        }

这就是给我的错误:

A Database Error Occurred
    Error Number: 1064
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'C:/wamp/www/mapApplication/uploads/pramotion113.csv INTO TABLE ' at line 1
LOAD DATA INFILE C:/wamp/www/mapApplication/uploads/pramotion113.csv INTO TABLE promotion_product FIELDS TERMINATED BY ',' ESCAPED BY ''' LINES TERMINATED BY ' ' IGNORE 1 LINES
Filename: C:'wamp'www'mapApplication'system'database'DB_driver.php
Line Number: 330

SequelPro或PHPmyAdmin这样的工具可以轻松做到这一点,或者你想在CodeIgniter中使用它有特定的原因吗?

编辑:

这篇文章似乎有很多与你想要实现的目标相关的信息:PHP - 使用 LOAD DATA INFILE 将 CSV 文件导入 mysql 数据库