Mysql
 sql >> Database >  >> RDS >> Mysql

Qual è la differenza tra il backtick e la parentesi quadra nelle istruzioni SQL?

SQL Server/T-SQL utilizza parentesi quadre (oltre a MS Access), mentre MySQL utilizza backtick.

Per quanto ne so, posso comparire nella documentazione , o utilizzare nei test, le parentesi quadre non valido per MySQL. Quindi, se è necessario racchiudere una parola chiave come nome di tabella in SQL Server, utilizzare [] e in MySQL usa backtick o virgolette quando ANSI_QUOTES è abilitato.

Dalla documentazione:

Il carattere della virgoletta identificativa è il backtick ("`"):

mysql> SELECT * FROM `select` WHERE `select`.id > 100;

Se la modalità SQL ANSI_QUOTES è abilitata, è anche consentito citare gli identificatori tra virgolette doppie:

mysql> CREATE TABLE "test" (col INT);
ERROR 1064: You have an error in your SQL syntax...
mysql> SET sql_mode='ANSI_QUOTES';
mysql> CREATE TABLE "test" (col INT);
Query OK, 0 rows affected (0.00 sec)