Chuyển đến nội dung
SPCX Tools

CSV sang SQL

Chuyển đổi tức thì dữ liệu CSV thành câu lệnh SQL CREATE TABLE và INSERT.

Chạy cục bộ — tệp không bao giờ rời khỏi thiết bị của bạn

Đang tải công cụ…

Cách sử dụng CSV sang SQL

  1. 1Dán dữ liệu CSV của bạn vào ô nhập liệu, hoặc nhấp vào Mẫu để xem cách định dạng.
  2. 2Nhập tên bảng đích và chọn loại cơ sở dữ liệu (MySQL, PostgreSQL, SQLite, hoặc SQL Server).
  3. 3Bật/tắt các tùy chọn để thêm câu lệnh CREATE TABLE, gộp các lệnh insert, hoặc xử lý ô trống là NULL.
  4. 4Sao chép mã SQL được tạo hoặc tải xuống trực tiếp dưới dạng tệp .sql.

Công cụ chuyển đổi CSV sang SQL nhanh chóng và bảo mật

Chuyển đổi dữ liệu bảng tính sang định dạng cơ sở dữ liệu quan hệ là công việc thường xuyên của các lập trình viên, quản trị viên cơ sở dữ liệu và chuyên viên phân tích dữ liệu. Công cụ này giúp bạn chuyển đổi CSV sang SQL trực tiếp ngay trên trình duyệt web. Dù bạn cần khởi tạo cơ sở dữ liệu mới, di chuyển dữ liệu cũ hay import nhanh một tập dữ liệu, bạn đều có thể tạo các câu lệnh INSERT từ dữ liệu CSV chỉ trong vài giây.

Vì toàn bộ quá trình chuyển đổi diễn ra cục bộ trên thiết bị của bạn, dữ liệu sẽ không bao giờ bị tải lên bất kỳ máy chủ bên ngoài nào. Điều này đảm bảo tính riêng tư và bảo mật tuyệt đối, giúp bạn an tâm xử lý các dữ liệu người dùng nhạy cảm, hồ sơ tài chính hoặc thông tin độc quyền mà không lo bị rò rỉ.

Cách hoạt động của tính năng tự động nhận diện kiểu dữ liệu

Viết schema thủ công cho tập dữ liệu có hàng chục cột rất mất thời gian. Để tiết kiệm thời gian, công cụ này sẽ tự động đọc dữ liệu CSV và nhận diện kiểu dữ liệu SQL phù hợp nhất cho từng cột. Công cụ sẽ kiểm tra các giá trị thực tế trong từng hàng (bỏ qua các ô trống) và áp dụng các quy tắc sau:

  • INTEGER: Được gán nếu mọi giá trị trong cột là số nguyên (ví dụ: 42, -15).
  • DECIMAL: Được gán nếu các giá trị là số thập phân hoặc sử dụng ký hiệu khoa học (ví dụ: 3.14, -0.5).
  • BOOLEAN: Được gán nếu cột chỉ chứa true hoặc false (không phân biệt chữ hoa chữ thường).
  • DATE: Được gán nếu các giá trị khớp với định dạng ngày chuẩn ISO (YYYY-MM-DD).
  • TEXT / VARCHAR: Kiểu dữ liệu dự phòng nếu cột chứa dữ liệu hỗn hợp, văn bản thuần túy hoặc các định dạng không khớp với các quy tắc nghiêm ngặt ở trên.

Nếu bạn chọn tạo câu lệnh CREATE TABLE, các kiểu dữ liệu nhận diện được này sẽ tự động chuyển đổi theo đúng cú pháp của hệ cơ sở dữ liệu bạn đã chọn.

Các phương ngữ SQL được hỗ trợ

Các hệ quản trị cơ sở dữ liệu khác nhau có những quy tắc riêng về cách đặt dấu nháy cho định danh (như tên bảng và cột), định nghĩa kiểu dữ liệu và định dạng giá trị hằng. Công cụ này hỗ trợ 4 phương ngữ chính để đảm bảo mã SQL bạn tạo ra có thể chạy mà không gặp lỗi cú pháp:

MySQL: Khi bạn chuyển đổi CSV sang MySQL, công cụ sẽ bọc tên bảng và cột trong dấu backtick (`). Cột văn bản mặc định là VARCHAR(255) và kiểu boolean được viết là TRUE hoặc FALSE.

PostgreSQL: Các định danh được bọc trong dấu ngoặc kép ("). Cột văn bản sử dụng kiểu TEXT, đây là tiêu chuẩn và hoạt động rất hiệu quả trong Postgres. Kiểu boolean được hỗ trợ sẵn là TRUE hoặc FALSE.

SQLite: Các định danh sử dụng dấu ngoặc kép. Vì SQLite sử dụng kiểu dữ liệu động với một tập hợp các lớp lưu trữ hạn chế, số thập phân sẽ được ánh xạ thành REAL, boolean được ánh xạ thành INTEGER (đầu ra là 1 hoặc 0) và văn bản sử dụng kiểu TEXT.

SQL Server (T-SQL): Các định danh được bọc trong dấu ngoặc vuông ([]). Cột văn bản mặc định là VARCHAR(255) và boolean được ánh xạ thành kiểu dữ liệu BIT (đầu ra là 1 hoặc 0). Ngoài ra, nếu chuỗi văn bản chứa các ký tự không phải ASCII (như tiếng Việt có dấu), công cụ sẽ tự động thêm tiền tố N (ví dụ: N'Value') để đảm bảo chèn đúng chuẩn Unicode (NVARCHAR).

Tùy chỉnh kết quả SQL

Bạn có thể tùy chỉnh script SQL được tạo ra để phù hợp với nhu cầu triển khai thông qua các tùy chọn sau:

  • Tên bảng: Chỉ định tên chính xác của bảng đích. Công cụ sẽ tự động thêm dấu trích dẫn chuẩn theo loại SQL của bạn.
  • Thêm lệnh CREATE TABLE: Nếu bạn đang tạo database từ đầu, hãy bật tùy chọn này để tạo cấu trúc bảng (schema) trước các lệnh insert. Công cụ sẽ dùng dòng tiêu đề của file CSV làm tên cột.
  • Insert hàng loạt: Việc chạy hàng ngàn lệnh INSERT INTO riêng lẻ sẽ rất chậm. Bật tùy chọn này để gộp tối đa 500 dòng vào một lệnh insert CSV sang SQL duy nhất. Cách này giúp giảm đáng kể dung lượng file và tăng tốc độ import.
  • Chuyển ô trống thành NULL: Các bảng tính thường có ô trống. Bật tùy chọn này để đảm bảo các giá trị rỗng trong file CSV được ghi chuẩn xác thành từ khóa NULL trong SQL, thay vì chèn chuỗi rỗng ('') vào database của bạn.

Mẹo chuẩn bị dữ liệu CSV

Để có kết quả tốt nhất, hãy đảm bảo file CSV của bạn có dòng tiêu đề. Công cụ sẽ dùng dòng dữ liệu đầu tiên để đặt tên cột trong các câu lệnh CREATE TABLE và INSERT. Nếu tiêu đề cột bị trống, nó sẽ tự động được đặt tên là column_1, column_2, v.v.

Nếu dữ liệu của bạn chứa văn bản phức tạp có dấu phẩy, ngắt dòng hoặc dấu ngoặc kép, hãy đảm bảo file CSV được định dạng chuẩn (thường là bằng cách đặt các trường dữ liệu trong dấu ngoặc kép). Công cụ được tích hợp bộ xử lý CSV mạnh mẽ, giúp xử lý chính xác các dấu ngoặc kép được escape và các trường dữ liệu nhiều dòng.

Nếu cần xử lý dữ liệu ở các định dạng khác, các công cụ chuyển đổi CSV sang JSON hoặc CSV sang Excel của chúng tôi có thể sẽ hữu ích cho bạn. Sau khi tạo xong mã SQL, bạn có thể đưa vào công cụ Định dạng SQL nếu cần điều chỉnh khoảng cách thụt lề hoặc kiểu chữ (hoa/thường) của các từ khóa.

Câu hỏi thường gặp

Công cụ nhận diện kiểu dữ liệu SQL như thế nào?
Trình chuyển đổi sẽ quét dữ liệu trong từng cột (bỏ qua các ô trống). Nếu mọi giá trị khớp với một định dạng cụ thể, nó sẽ gán kiểu tương ứng: INTEGER cho số nguyên, DECIMAL cho số thập phân, BOOLEAN cho giá trị đúng/sai và DATE cho định dạng YYYY-MM-DD. Nếu dữ liệu hỗn hợp hoặc không khớp với các định dạng này, nó sẽ mặc định là TEXT hoặc VARCHAR.
Dữ liệu CSV của tôi có bị tải lên máy chủ không?
Không. Toàn bộ quá trình phân tích và tạo mã SQL đều diễn ra cục bộ ngay trên trình duyệt web của bạn bằng JavaScript. Dữ liệu không bao giờ rời khỏi thiết bị, giúp công cụ này an toàn tuyệt đối cho các bản ghi cơ sở dữ liệu nhạy cảm, bảo mật hoặc độc quyền.
Tùy chọn "Batch" có tác dụng gì?
Khi được bật, công cụ sẽ gộp tối đa 500 hàng dữ liệu vào một câu lệnh INSERT nhiều hàng duy nhất. Điều này giúp giảm đáng kể dung lượng của tệp SQL được tạo ra và tăng tốc độ thực thi khi bạn chạy tập lệnh trong cơ sở dữ liệu của mình.
Các ô trống được xử lý như thế nào?
Nếu bạn chọn "Empty as NULL", mọi ô trống trong tệp CSV sẽ được ghi thành từ khóa NULL trong đầu ra SQL. Nếu không chọn, các ô trống sẽ được xử lý thành chuỗi rỗng ('') đối với cột văn bản, hoặc giữ nguyên là NULL đối với cột số (nơi chuỗi rỗng có thể gây ra lỗi cú pháp).
Tại sao kiểu dữ liệu được tạo lại thay đổi khi tôi chuyển đổi hệ cơ sở dữ liệu?
Các hệ cơ sở dữ liệu khác nhau sử dụng từ khóa khác nhau cho kiểu dữ liệu của cột. Ví dụ: cột boolean được biểu diễn là BOOLEAN trong PostgreSQL, nhưng lại là BIT trong SQL Server và INTEGER trong SQLite. Công cụ sẽ tự động điều chỉnh cú pháp CREATE TABLE và định dạng dữ liệu cho phù hợp với hệ cơ sở dữ liệu đã chọn.