Giả sử bạn giống như tôi và cần phải có ~ 2Gib của các bản ghi vào cơ sở dữ liệu SQL. Hầu hết chúng ta có thể đang chạy một máy chủ lưu trữ được chia sẻ và có những hạn chế liên quan đến kích thước tải lên tệp trong phpmyadmin. Thành thật mà nói, sau khi khám phá phương pháp mới này, tôi không biết rằng tôi sẽ tải lên dữ liệu lớn theo cách khác.
Dưới đây là một kịch bản PHP tuyệt vời từ Stavros Skamagkis sử dụng PDO. Nó là khá tự giải thích. Tôi đã bao gồm một phiên bản sửa đổi dưới đây.
Vậy nhập khẩu mất bao lâu? Vâng, trong trường hợp của tôi, tôi có ~ 1.800.000 hồ sơ với 30 cột và phải mất vài giây, giống như dưới 5.
Tips:
Xác định
fieldseparator
,fieldEscapedBy
,fieldEnclosedBy
vàlineSeperator
là các biến [được hiển thị trong một vài dòng đầu tiên]. Tôi kéo dài bánh xe của mình một chút xác định chúng nội tuyến không hoạt động [tôi tin vì PDO].Vị trí tệp CSV liên quan đến vị trí tệp này.
Tiêu đề? Sử dụng
IGNORE 1 LINES
để bỏ qua dòng đầu tiên.Làm thế nào để chạy? Tôi đã tạo một nút phát triển và liên kết
onClick[]
kết nối thông qua AJAX với tài nguyên. Tôi biết có những phương pháp dễ dàng hơn, tôi đã thiết lập nó. Tuy nhiên, điều này hoạt động.
Nhập chế độ FullScreenen EXIT Mode FullScreen