2017-01-12 23 views
0

カンマ区切りの値リストを含むことができる列を含むCSVファイルがあります。CSVをmySQLにインポート

Iは、データをインポートするには、以下のSQLステートメントを使用する:

LOAD DATA LOCAL INFILE 'C:/tmp/geography.csv' 
INTO TABLE geography 
FIELDS TERMINATED BY ',' 
ENCLOSED BY '"' 
IGNORE 1 ROWS; 

しかし、値のカンマ区切りリスト、そのインポートを破壊を含む行に到達したとき。私は問題を再現することはできません

id,zip,location_type,primary_city,state,county,area_codes 
    ,00501,UNIQUE,Holtsville,NY,Suffolk County,631 
    ,00601,STANDARD,Adjuntas,PR,Adjuntas Municipio,"787,939" 

enter image description here

答えて

0

データの形式は次のようになります。

ファイル:/path/to/file/geography.csv

id,zip,location_type,primary_city,state,county,area_codes 
\N,00501,UNIQUE,Holtsville,NY,Suffolk County,631 
\N,00601,STANDARD,Adjuntas,PR,Adjuntas Municipio,"787,939" 
\N,00602,STANDARD,Aguada,PR,Aguada Municipio,"797,949" 

MySQLコマンドライン:

mysql> SELECT VERSION(); 
+-------------------------+ 
| VERSION()    | 
+-------------------------+ 
| 5.7.16-0ubuntu0.16.04.1 | 
+-------------------------+ 
1 row in set (0.00 sec) 

mysql> DROP TABLE IF EXISTS `geography`; 
Query OK, 0 rows affected (0.01 sec) 

mysql> CREATE TABLE IF NOT EXISTS `geography` (
    -> `id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, 
    -> `zip` VARCHAR(5) NOT NULL, 
    -> `location_type` VARCHAR(25) NOT NULL, 
    -> `primary_city` VARCHAR(25) NOT NULL, 
    -> `state` VARCHAR(25) NOT NULL, 
    -> `county` VARCHAR(25) NOT NULL, 
    -> `area_codes` VARCHAR(25) NOT NULL 
    ->); 
Query OK, 0 rows affected (0.00 sec) 

mysql> LOAD DATA LOCAL INFILE '/path/to/file/geography.csv' 
    -> INTO TABLE `geography` 
    -> FIELDS TERMINATED BY ',' ENCLOSED BY '"' 
    -> IGNORE 1 ROWS; 
Query OK, 3 rows affected (0.00 sec) 
Records: 3 Deleted: 0 Skipped: 0 Warnings: 0 

mysql> SELECT 
    -> `id`, 
    -> `zip`, 
    -> `location_type`, 
    -> `primary_city`, 
    -> `state`, 
    -> `county`, 
    -> `area_codes` 
    -> FROM 
    -> `geography`; 
+----+-------+---------------+--------------+-------+--------------------+------------+ 
| id | zip | location_type | primary_city | state | county    | area_codes | 
+----+-------+---------------+--------------+-------+--------------------+------------+ 
| 1 | 00501 | UNIQUE  | Holtsville | NY | Suffolk County  | 631  | 
| 2 | 00601 | STANDARD  | Adjuntas  | PR | Adjuntas Municipio | 787,939 | 
| 3 | 00602 | STANDARD  | Aguada  | PR | Aguada Municipio | 797,949 | 
+----+-------+---------------+--------------+-------+--------------------+------------+ 
3 rows in set (0.00 sec) 
関連する問題