Tạo các câu lệnh SQL (INSERTs) từ dữ liệu CSV của bạn.
Về CSV sang SQL
Việc nạp dữ liệu từ bảng tính vào cơ sở dữ liệu thường có nghĩa là phải tự viết các câu lệnh INSERT bằng tay hoặc vật lộn với trình hướng dẫn import. Công cụ này biến mỗi hàng CSV thành một câu lệnh INSERT INTO, hoặc thành một câu lệnh UPDATE dùng cột đầu tiên làm khóa, sử dụng các định danh được bao trong dấu backtick mà MySQL và MariaDB chấp nhận, và hầu hết các hệ quản trị khác cũng chấp nhận sau một bước thay thế nhanh.
Dán CSV vào, nhập tên bảng, chọn INSERT hoặc UPDATE rồi sao chép các câu lệnh được tạo ra vào công cụ SQL của bạn. Quá trình tạo lệnh diễn ra ngay trong trình duyệt, nên một danh sách khách hàng sẽ không bao giờ bị tải lên bất kỳ đâu.
Cách dùng CSV sang SQL từng bước
Dán CSV vào ô bên trái. Hàng tiêu đề sẽ cung cấp tên các cột.
Nhập tên bảng đích (mặc định là my_table).
Chọn loại câu lệnh: INSERT để thêm hàng mới, hoặc UPDATE để sửa các hàng khớp với cột đầu tiên.
Nhấp "Chuyển đổi sang SQL" rồi nhấp "Sao chép SQL" để đặt các câu lệnh vào bộ nhớ tạm.
INSERT INTO `users` (`id`, `name`, `city`) VALUES ('1', 'Ana', 'Madrid');
INSERT INTO `users` (`id`, `name`, `city`) VALUES ('2', 'Luis', 'Sevilla');
Tại sao nên sử dụng CSV sang SQL của chúng tôi?
Miễn phí 100% và trực tuyến: không thanh toán, không cần cài đặt phần mềm hay tiện ích.
Bảo mật trên hết: xử lý diễn ra trong trình duyệt của bạn, dữ liệu không rời khỏi thiết bị.
Không cần đăng ký: dán dữ liệu và nhận kết quả chỉ với một cú nhấp.
Nhanh và đáng tin cậy: xử lý tệp nhỏ hoặc lớn trong vài giây, sẵn sàng cho Excel và các công cụ khác.
Các trường hợp sử dụng phổ biến
Khởi tạo dữ liệu mẫu cho cơ sở dữ liệu phát triển từ dữ liệu tham chiếu được lưu trong bảng tính.
Chuẩn bị một loạt câu lệnh UPDATE để sửa giá hoặc địa chỉ được xuất ra từ Excel.
Thêm một danh sách người dùng hoặc sản phẩm vào bảng MySQL, MariaDB hoặc SQLite mà không cần dùng trình hướng dẫn import.
Tạo một script migration cho Laravel, Django hoặc Flyway từ dữ liệu dạng bảng.
Giới hạn và mẹo
Mọi giá trị đều được đặt trong dấu nháy như một chuỗi, kể cả số và ngày tháng; MySQL sẽ tự chuyển đổi khi insert, nhưng một số hệ quản trị nghiêm ngặt hơn có thể yêu cầu bỏ dấu nháy quanh các giá trị số.
Các định danh sử dụng dấu backtick (cú pháp MySQL). Với PostgreSQL hoặc SQL Server, hãy thay bằng dấu nháy kép hoặc dấu ngoặc vuông sau khi sao chép.
Ở chế độ UPDATE, cột đầu tiên của CSV được dùng trong mệnh đề WHERE, còn các cột còn lại nằm trong mệnh đề SET, vì vậy hãy đặt khóa chính lên đầu.
Bộ phân tích tách theo dấu phẩy và bỏ qua các trường có dấu ngoặc kép; những giá trị chứa dấu phẩy sẽ gây ra lỗi lệch số cột trong cơ sở dữ liệu. Dấu nháy đơn bên trong giá trị được escape thành ''.
Câu hỏi thường gặp
Sự khác biệt giữa tùy chọn INSERT và UPDATE là gì?
INSERT tạo ra một câu lệnh INSERT INTO cho mỗi hàng và thêm các bản ghi mới vào bảng. UPDATE tạo ra một câu lệnh UPDATE cho mỗi hàng, thiết lập mọi cột trừ cột đầu tiên, dùng cột đầu tiên làm khóa trong mệnh đề WHERE, nên các bản ghi hiện có sẽ được sửa thay vì tạo mới.
Công cụ này có hoạt động với PostgreSQL hoặc SQL Server không?
Các câu lệnh dùng dấu backtick bao quanh tên bảng và tên cột, đây là cú pháp của MySQL và MariaDB. Với PostgreSQL, hãy thay dấu backtick bằng dấu nháy kép, còn với SQL Server thì thay bằng dấu ngoặc vuông; phần còn lại của cú pháp là SQL chuẩn.
Tại sao các con số lại được viết trong dấu nháy?
CSV không có kiểu dữ liệu, nên công cụ tạo lệnh coi mọi ô là một chuỗi và đặt trong dấu nháy. MySQL, SQLite và MariaDB sẽ tự động chuyển '1' thành 1 khi ở cột kiểu số. Nếu hệ quản trị của bạn từ chối điều đó, hãy dùng chức năng tìm và thay thế để bỏ dấu nháy ở các cột số.
Làm sao để xử lý các giá trị NULL?
Các ô trống được chèn vào dưới dạng chuỗi rỗng (''), chứ không phải NULL. Sau khi tạo các câu lệnh, hãy thay '' bằng NULL ở những chỗ cần thiết, hoặc đặt giá trị mặc định trong định nghĩa bảng.
Tệp CSV có được gửi đến máy chủ không?
Không. Đoạn văn bản SQL được tạo ngay trong trình duyệt của bạn và hiển thị trong ô kết quả; không có gì được tải lên hay lưu trữ.
Công cụ liên quan
Các tiện ích miễn phí khác có thể hữu ích cho bạn
SQL sang CSV — Chuyển đổi một bản kết xuất SQL (INSERTs) thành một tệp CSV.
CSV sang Excel — Chuyển tệp CSV thành tệp Excel (.xlsx) thực sự, các cột được tách đúng và giữ nguyên số 0 ở đầu.
CSV sang Phân cách — Thay đổi dấu phân cách của CSV của bạn (dấu phẩy, chấm phẩy, tab).