09/10/2018, 22:37

Import dữ liệu Excel Tiếng Việt vào Mysql

Tôi import dữ liệu Tiếng Việt unicode vào mysql nhưng khi đọc dữ liệu ra thì bị lỗi font. Nhưng nếu cũng dữ liệu ấy tôi nhập vào từ form trên trình duyệt thì không bị lỗi gì.
Ai có kinh nghiệm xử lý lỗi này xin hãy giúp tôi.
Cảm ơn nhiều.
bathazar viết 00:42 ngày 10/10/2018
- Không hiểu bạn định hỏi gì??? có phải bạn import vào mysql từ excel... Bạn import như thế nao ???
acevn viết 00:44 ngày 10/10/2018
Đúng rồi, sao import được bằng MySQL hay dzậy??? Các bạn nào muốn import thế thì nên làm như sau:
- Dùng Access để import Excel.
- Viết code bằng PHP để import từ Access qua MySQL.
chonnh viết 00:51 ngày 10/10/2018
Mình nghĩ lỗi của PHPfan là do Encoding. Bạn thử lưu lại file Excel với encoding giống như charset của trang web của bạn(cùng là utf-8 chẳng hạn). Good luck !
flamenco viết 00:48 ngày 10/10/2018
Mình thì import vào excel từ file CVS thấy tốc độ cũng nhanh
Adam viết 00:51 ngày 10/10/2018
Excel==>xml,xml==>Mysql.
==>(convert) .Nghĩ vậy chắc ok,vì tui đã từng làm với Mysql2xml(viết bằng Php),xml2Access(viết bằng C#) .Hoàn toàn có thể đi từ excel sang mysql nhưng lại đụng vấn đề font chữ .Qua chuẩn xml thì ok hết.
PHPfan viết 00:39 ngày 10/10/2018
Cảm ơn các bạn đã chỉ giúp? Mình dùng Navicat kiem duoc tren mang chuyen dung de import dữ liệu vào Mysql. Mình thấy cái đó hay lắm nhưng lại gặp lỗi với font Tiếng Việt Unicode (Lỗi này mình cũng đã gặp khi import dữ liệu TV vào MS SQL). Các field trong bảng đều đã set UTF-8. chuyển sang XML thì chưa thử vì không rành về cái này lắm.
danp viết 00:53 ngày 10/10/2018
Tôi thì cứ copy từ excell rồi paste vào textarea và phân phân tích dữ liệu đó và chèn vào thôi không bao giờ sợ bị lỗi font mà ngồi ở đâu cũng load được
tôi đã làm một cái để load vào oracle. có chức năng chọn bảng để load, kiểm tra xem dữ liệu dán sang đó có phù hợp với bảng vừa chọn không, load vào một bảng temp có cấu trúc giống bảng cần load nếu không phát sinh lỗi nào thì mới load vào bảng cần load nếu phát sinh lỗi thì yêu cầu ngời load trở lại excel sửa và lại copy và paste.
QuanN viết 00:41 ngày 10/10/2018
Export Excel workbook ra Unicode UTF-8 text file (csv) rồi import vào MySQL qua lệnh LOAD DATA INFILE. Unicode data sẽ được giữ nguyên dạng.

Và đây là lệnh cụ thể:
Code:
mysql> LOAD DATA LOCAL INFILE 'authors.txt' INTO TABLE authors FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\r\n';
cho 1 csv file 'authors.txt' có records có các fields như sau:
Code:
"authid","lastname","firstname","address1","address2","city","state_prov","postcode","country","phone","fax","email"
1,"Nguyễn","Trần",,,,,,,,,
Hãy bảo đảm MySQL default charset là utf8. Bạn có thể cần phải create Schema (tức database structure) và các Table của nó trước khi chạy command trên qua 2 cách: 1) manually (bằng tay); 2) MySQL Migration Toolkit để re-create Schema & Table trong MySQL rồi TRUNCATE để clear các table đó trước khi import, vd:
Code:
TRUNCATE TABLE authors;
Tham khảo thêm:

Migrating from Microsoft SQL Server and Access to MySQL
MySQL Reference Manual: LOAD DATA INFILE Syntax
Bài liên quan
0