Pensé que habría otra pregunta sobre esto, pero no pude encontrar ninguna. En MySQL con PHP, por lo general, encapsulo mis nombres de campo con marcadores para enmascarar cualquier nombre o carácter reservado. Sin embargo, uno de mis colegas ha señalado que esto también se puede lograr utilizando corchetes. Excluyendo el hecho de que los backticks no son compatibles con SQL Server (aparentemente), ¿cuál es la diferencia? ¿Qué debería usar?¿Cuál es la diferencia entre el backtick y el corchete en las sentencias de SQL?
SELECT `username` FROM `users`
SELECT [username] FROM [users]
¿Son los corchetes compatibles con MySQL entonces? En SQL Server también puede usar "si' QUOTED_IDENTIFIER' está activado. No sé si eso es válido en MySQL. –
Tiene razón al preguntar, no, no son compatibles. ¡Supuse que sí! –
Los corchetes son obligatorios si usa palabras clave o caracteres especiales en la columna o en los nombres de las bases de datos. También los corchetes son la forma de usar una palabra reservada como nombre de campo (por ejemplo [fecha]) –