Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Các loại dấu nháy trong MySQL: Backtick và Single Quote

Tóm tắt

MySQL sử dụng hai loại dấu nháy chính với mục đích khác nhau:

  • Backtick (`): Bao quanh tên định danh (tên bảng, tên cột) – bắt buộc khi tên trùng từ khóa hoặc chứa ký tự đặc biệt.
  • Single quote ('): Bao quanh giá trị chuỗi (string literal) – dùng cho dữ liệu văn bản, ngày tháng.

Ví dụ minh họa

1. Tạo bảng

CREATE TABLE QuotesDemo (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    UserName VARCHAR(20),
    UserAge INT
);

2. Chèn dữ liệu (dùng backtick cho cột, single quote cho giá trị)

INSERT INTO QuotesDemo (`UserName`, `UserAge`) VALUES ('John', 23);
INSERT INTO QuotesDemo (`UserName`, `UserAge`) VALUES ('Carol', 21);
INSERT INTO QuotesDemo (`UserName`, `UserAge`) VALUES ('Sam', 22);

3. Truy vấn (backtick cho tên bảng/cột, single quote cho giá trị so sánh)

SELECT * FROM `QuotesDemo` WHERE `UserName` = 'Carol';

4. Kết quả

+----+----------+---------+
| Id | UserName | UserAge |
+----+----------+---------+
| 2  | Carol    | 21      |
+----+----------+---------+

Khi nào bắt buộc dùng backtick?

  • Tên bảng/cột trùng từ khóa SQL: SELECT * FROM `order`
  • Tên chứa khoảng trắng hoặc ký tự đặc biệt: `full name`
  • Muốn code rõ ràng, nhất quán (khuyến nghị luôn dùng).

Lưu ý

  • Double quote (") có thể dùng như backtick nếu sql_mode không chứa ANSI_QUOTES.
  • Không dùng single quote cho tên định danh – sẽ bị hiểu là chuỗi ký tự.