Kiểm tra cú pháp MySQL

Xác thực truy vấn MySQL trước khi bạn chạy chúng. Công cụ phân tích từng câu lệnh theo cú pháp MySQL và chỉ ra chỗ bị lỗi, bao gồm dấu backtick, LIMIT, ON DUPLICATE KEY UPDATE và các cấu trúc khác.

Cập nhật

Dữ liệu của bạn không bao giờ rời khỏi máy tính. Mọi xử lý diễn ra 100% cục bộ trong trình duyệt của bạn.

Công cụ này có hữu ích không?0.0 0 lượt đánh giá
Kiểm tra cú pháp SQL cho MySQLPostgreSQL, SQL Server, SQLite, BigQuery và Snowflake.Kiểm tra cú pháp SQL →

Cách dùng Kiểm tra cú pháp MySQL

  1. Chọn phương ngữ cơ sở dữ liệu của bạn (MySQL, PostgreSQL, SQL Server, SQLite, BigQuery và nhiều loại khác).
  2. Dán hoặc mở đoạn SQL của bạn. Nhiều câu lệnh được ngăn cách bằng dấu chấm phẩy vẫn được hỗ trợ.
  3. Lỗi sẽ hiển thị dòng, cột và các token mong đợi, đồng thời đánh dấu vị trí sai.
  4. Các câu lệnh hợp lệ được liệt kê kèm loại lệnh và các bảng mà chúng tác động, cùng cảnh báo cho những mẫu viết tiềm ẩn rủi ro.

Trình kiểm tra SQL kiểm tra những gì?

Trình kiểm tra SQL (hay trình kiểm tra cú pháp) phân tích truy vấn của bạn theo ngữ pháp của một cơ sở dữ liệu cụ thể và cho bạn biết truy vấn có đúng cấu trúc hay không: dấu ngoặc đơn có cân bằng không, từ khóa có đúng thứ tự không, biểu thức có hợp lệ không, có dấu phẩy giữa các cột không, và các kiểm tra tương tự. Công cụ này tách đoạn script của bạn thành từng câu lệnh, phân tích riêng từng câu để bạn thấy được tất cả câu lệnh bị lỗi cùng lúc, đồng thời chỉ ra dòng và cột nơi quá trình phân tích dừng lại. Mặc định, công cụ dùng ngữ pháp MySQL.

Cảnh báo về thực hành tốt

Cảnh báoVì sao quan trọng
UPDATE / DELETE không có WHEREThay đổi mọi dòng trong bảng, thường là một lỗi sơ suất.
SELECT *Lấy về các cột bạn có thể không cần và dễ hỏng khi bảng thêm hoặc đổi thứ tự cột.
INSERT không có danh sách cộtPhụ thuộc vào thứ tự cột; thêm một cột sẽ làm câu lệnh bị lỗi.
LIKE '%…'Ký tự đại diện ở đầu không thể dùng chỉ mục thông thường nên sẽ quét toàn bộ bảng.
= NULLKhông bao giờ đúng; hãy dùng IS NULL.
ORDER BY không có LIMIT trong subquery, hoặc LIMIT không có ORDER BYThứ tự dòng không được đảm bảo nếu không có sắp xếp rõ ràng.

Khác biệt giữa các phương ngữ gây lỗi

  • Dấu bao định danh — MySQL và MariaDB dùng dấu backtick (`order`), PostgreSQL, SQLite và chuẩn SQL dùng dấu ngoặc kép, SQL Server dùng dấu ngoặc vuông ([order]).
  • Giới hạn số dòng — LIMIT 10 trong MySQL, PostgreSQL và SQLite; TOP 10 hoặc OFFSET … FETCH trong SQL Server.
  • Upsert — ON DUPLICATE KEY UPDATE (MySQL) so với ON CONFLICT … DO UPDATE (PostgreSQL, SQLite) so với MERGE (SQL Server, Snowflake, BigQuery).
  • Ép kiểu — PostgreSQL chấp nhận value::int; hầu hết các hệ khác cần CAST(value AS INT).

Các lỗi cú pháp MySQL thường gặp

Thông báo gốc của MySQL, “You have an error in your SQL syntax… near '…' at line 1”, trích lại đoạn văn bản tại vị trí quá trình phân tích thất bại. Các nguyên nhân phổ biến là dùng từ khóa dành riêng làm tên (order, group, key — hãy bọc chúng trong dấu backtick), có dấu phẩy thừa ngay trước FROM, dùng dấu ngoặc kép cho định danh (MySQL coi chúng là chuỗi trừ khi bật ANSI_QUOTES) và thiếu dấu phẩy giữa các cột.

Để truy vấn dễ đọc hơn, hãy dùng SQL formatter, tạo câu lệnh từ dữ liệu bằng CSV to SQL hoặc JSON to SQL, và thiết kế bảng với CREATE TABLE generator.

Cũng được tìm dưới tên: xác thực truy vấn mysql, kiểm tra lỗi sql mysql, lỗi cú pháp mysql, mysql linter, kiểm tra cú pháp mariadb.

Các công cụ dùng kèm tốt với Kiểm tra cú pháp MySQL

  • Kiểm tra cú pháp SQL — Dán một câu truy vấn hoặc cả một script để kiểm tra cú pháp theo ngữ pháp của cơ sở dữ liệu bạn đang dùng.
  • Kiểm tra cú pháp PostgreSQL — Kiểm tra truy vấn PostgreSQL ngay trên trình duyệt của bạn.
  • Excel sang JSON — Mở file .xlsx hoặc dán trực tiếp các ô từ Excel hay Google Sheets để nhận JSON sạch.
  • JSON sang Excel — Biến mảng JSON thành một workbook Excel thực sự.

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

SQL của tôi có được gửi lên máy chủ hay cơ sở dữ liệu không?
Không. Truy vấn được phân tích ngay trong trình duyệt của bạn bằng ngữ pháp node-sql-parser mã nguồn mở. Không có gì được tải lên và không có gì được thực thi.
Kết quả hợp lệ có nghĩa là truy vấn sẽ chạy được không?
Kết quả đó chỉ có nghĩa là cú pháp hợp lệ với phương ngữ đã chọn. Trình kiểm tra không biết cấu trúc schema của bạn, nên tên bảng hoặc cột viết sai, thiếu quyền truy cập hay không khớp kiểu dữ liệu chỉ lộ ra khi cơ sở dữ liệu thực thi truy vấn.
Vì sao lỗi được báo ở vị trí sau chỗ tôi sai?
Trình phân tích báo lỗi ở token đầu tiên mà nó không thể khớp với ngữ pháp. Một từ khóa viết sai như WHER thường bị đọc thành bí danh, nên lỗi xuất hiện ở từ tiếp theo. Hãy kiểm tra thêm token ngay trước vị trí được đánh dấu.
Những câu lệnh nào được hỗ trợ?
SELECT (có join, subquery, CTE, window function, UNION), INSERT, UPDATE, DELETE, REPLACE, CREATE / ALTER / DROP TABLE, CREATE INDEX và VIEW, TRUNCATE, USE và nhiều lệnh khác, tùy thuộc vào phương ngữ. Stored procedure và các khối thủ tục riêng của từng nhà cung cấp chưa được hỗ trợ đầy đủ.
Tôi có thể cài Kiểm tra cú pháp MySQL như một ứng dụng web và dùng khi không có mạng không?
Có. Kiểm tra cú pháp MySQL là một ứng dụng web (PWA) có thể cài đặt — cài trực tiếp từ trình duyệt, không cần tải từ cửa hàng ứng dụng. Trên Chrome hoặc Edge (Windows, macOS, Linux, ChromeOS) hoặc Android, bấm Cài đặt ứng dụng ở đầu trang này; trên iPhone và iPad, dùng Chia sẻ → Thêm vào Màn hình chính; trên Mac, dùng File → Add to Dock trong Safari 17 trở lên. Sau đó ứng dụng mở trong cửa sổ riêng với biểu tượng riêng, và vì chạy hoàn toàn trên trình duyệt nên vẫn hoạt động khi không có mạng. Firefox trên máy tính không thể cài ứng dụng web. Cách cài đặt hoạt động thế nào.

Công cụ liên quan