Ngày tháng trong tệp dữ liệu của bạn đã ở định dạng mà MySQL có thể hiểu được. Nó chỉ được đặt trong dấu ngoặc kép. Bạn cần cho biết LOAD DATA INFILE
làm thế nào để đối phó với các báo giá. Hãy thử một cái gì đó như sau:
LOAD DATA LOCAL INFILE 'myData.csv'
INTO TABLE equity_last_import
FIELDS OPTIONALLY ENCLOSED BY '"' TERMINATED BY ','
LINES TERMINATED BY '\n'
(equity,last,last_date)
Cập nhật:
Vì bạn đã nói rằng nó không hoạt động, tôi đã tạo một bảng kiểm tra và xác minh rằng nó hoạt động. Đây là bằng chứng:
Tôi đã đánh dấu dữ liệu csv của bạn từ câu hỏi và dán vào một tệp mới có tên myData.csv
trong /tmp
của hệ thống của tôi thư mục. Sau đó, tôi kết nối với bảng điều khiển mysql, chuyển sang test
cơ sở dữ liệu và chạy như sau:
mysql> create table equity_last_import (equity int, last decimal(10,2), last_date datetime) engine=innodb;
Query OK, 0 rows affected (0.02 sec)
mysql> LOAD DATA LOCAL INFILE '/tmp/myData.csv'
-> INTO TABLE equity_last_import
-> FIELDS OPTIONALLY ENCLOSED BY '"' TERMINATED BY ','
-> LINES TERMINATED BY '\n'
-> (equity,last,last_date);
Query OK, 10 rows affected (0.00 sec)
Records: 10 Deleted: 0 Skipped: 0 Warnings: 0
mysql> select * from equity_last_import;
+--------+--------+---------------------+
| equity | last | last_date |
+--------+--------+---------------------+
| 4108 | 48.74 | 2013-09-16 16:15:04 |
| 4249 | 8.10 | 2013-09-16 16:15:04 |
| 4197 | 3.81 | 2013-09-16 17:20:00 |
| 4139 | 26.81 | 2013-09-16 16:15:04 |
| 4218 | 24.83 | 2013-09-16 17:20:00 |
| 4260 | 79.72 | 2013-09-16 16:15:04 |
| 4270 | 450.12 | 2013-09-16 17:20:00 |
| 4242 | 30.38 | 2013-09-16 16:15:04 |
| 4193 | 1.42 | 2013-09-16 16:15:04 |
| 4134 | 3.77 | 2013-09-16 16:15:04 |
+--------+--------+---------------------+
10 rows in set (0.00 sec)
Xem? Nó hoạt động hoàn hảo.
Một bản cập nhật khác:
Bạn đã chỉ rõ rằng bạn đang gặp lỗi sau:
Out of range value for column 'last_date' at row 1
Tệp CSV của bạn có tiêu đề không? Nếu vậy, bạn có thể muốn thêm IGNORE 1 LINES
vào LOAD DATA INFILE
của bạn lệnh để yêu cầu MySQL bỏ qua tiêu đề.