Les crochets []
sont utilisés pour délimiter les identifiants. Cela est nécessaire si le nom de la colonne est un mot-clé réservé ou contient des caractères spéciaux tels qu'un espace ou un trait d'union.
Certains utilisateurs aiment également utiliser des crochets même lorsqu'ils ne sont pas nécessaires.
À partir de MSDN :
Identifiants délimités
Sont entourés de guillemets doubles ("") ou de crochets ([ ]). Les identifiants qui respectent les règles de format des identifiants peuvent ou non être délimités.
SELECT * FROM [TableX] --Delimiter is optional. WHERE [KeyCol] = 124 --Delimiter is optional.
Les identifiants qui ne respectent pas toutes les règles relatives aux identifiants doivent être délimités dans une instruction Transact-SQL.
SELECT * FROM [My Table] --Identifier contains a space and uses a reserved keyword. WHERE [order] = 10 --Identifier is a reserved keyword.