01/10/2018, 17:36

Ý nghĩa và cách dùng dấu ngoặc vuông [] trong SQL

Hôm nay lại ngồi review scripts, rồi lại có cái nhỏ nhỏ để chia sẽ. Cái này có lẽ đã biết từ lâu, nhưng bao năm không đụng đến, nên khi review scripts của các bạn trẻ, không hiểu sao lúc có lúc không. Và mấy bạn cũng làm theo quán tính, chứ cũng chưa rõ tại sao. Vì thực sự có những chỗ không cần ...

Hôm nay lại ngồi review scripts, rồi lại có cái nhỏ nhỏ để chia sẽ. Cái này có lẽ đã biết từ lâu, nhưng bao năm không đụng đến, nên khi review scripts của các bạn trẻ, không hiểu sao lúc có lúc không. Và mấy bạn cũng làm theo quán tính, chứ cũng chưa rõ tại sao. Vì thực sự có những chỗ không cần dấu ngoặc vông này.

Khi viết script, tên tables hay tên columns của chúng ta trùng với những từ quy định sẵn trong SQL như là key, data type, … (ví dụ như là: as Type, Status, Security, View, Select, …) thì script chúng ta bị báo lỗi. Vì thế chúng ta phải dùng cặp dấu ngoặc vuông [] để bao đầu đuôi của từ đó, để SQL hiểu và không báo lỗi.

Ví dụ bên dưới là một script có dùng dấu ngoặc vuông:

SELECT Product, [Type], Supplier, [Date]

FROM Products

WHERE  [Type] = ‘Computer’

Giải thích: các từ Type, Date là các từ đặt biệt trong SQL, nên script sẽ báo lỗi, chúng ta phải dùng dấu ngoặc vuông để bao bọc lại. Đó là lý do tại sao bạn nhìn vô mệnh đề SELECT có chỗ có ngoặc vuông có chỗ không có.

Ghi chú: làm tương tự cho table, nếu table của bạn trùng với một số từ đặt biệt trong SQL nhé, ví dụ như bên dưới. Tên của table là Security.

SELECT * FROM [Security] Where IsEnable = 1

Góc Kinh Nghiệm chúc các bạn thành công!


0