Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jaka jest różnica między znacznikiem a nawiasem kwadratowym w instrukcjach SQL?

SQL Server/T-SQL używa nawiasów kwadratowych (podobnie jak MS Access), podczas gdy MySQL używa backticków.

O ile wiem, czy może pojawić się w dokumentacji lub używać w testach, nawiasy kwadratowe nie ważne dla MySQL. Więc jeśli potrzebujesz dołączyć słowo kluczowe jako nazwę tabeli w SQL Server, użyj [] , aw MySQL używaj znaków wstecznych lub podwójnych cudzysłowów, gdy ANSI_QUOTES jest włączony.

Z dokumentacji:

Znak cudzysłowu identyfikatora to znak zaznaczenia („`”):

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

Jeśli włączony jest tryb ANSI_QUOTES SQL, dopuszczalne jest również cytowanie identyfikatorów w podwójnych cudzysłowach:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MYSQL UPUŚĆ WIDOK

  2. Objaśnienie MySQL COALESCE()

  3. Błąd przygotowanej instrukcji mysql:MySQLSyntaxErrorException

  4. Jak mogę wyświetlić te same dane identyfikatora z pętlą while w PHP?

  5. Praca z silnikami baz danych MySQL