sql >> Database >  >> RDS >> Mysql

Wat is het verschil tussen de backtick en de vierkante haak in SQL-statements?

SQL Server/T-SQL gebruikt vierkante haken (evenals MS Access), terwijl MySQL backticks gebruikt.

Voor zover ik weet, kan opduiken in documentatie , of gebruiken bij het testen, zijn vierkante haken niet geldig voor MySQL. Dus als u een trefwoord als tabelnaam in SQL Server moet omsluiten, gebruik dan [] , en gebruik in MySQL backticks of dubbele aanhalingstekens wanneer ANSI_QUOTES is ingeschakeld.

Uit de documentatie:

Het identifier-aanhalingsteken is de backtick (“`”):

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

Als de ANSI_QUOTES SQL-modus is ingeschakeld, is het ook toegestaan ​​om identifiers tussen dubbele aanhalingstekens te citeren:

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)


  1. Hoe opeenvolgende rijen te vinden op basis van de waarde van een kolom?

  2. N+1 redundantie en serverconsolidatie

  3. Hoe het mysql root-wachtwoord te wijzigen?

  4. Hoe een door de gebruiker gedefinieerde uitzondering te declareren met behulp van een uitzonderingsvariabele in Oracle Database?