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

Czy różne bazy danych używają różnych cytatów z nazwy?

Takie użycie cudzysłowów nazywa się rozdzielanymi identyfikatorami. Jest to ważna część SQL, ponieważ w przeciwnym razie nie można używać identyfikatorów (np. nazw tabel i nazw kolumn), które:

  • Uwzględnij spację:„mój stół”
  • Dołącz znaki specjalne i interpunkcję:„moja-tabela”
  • Uwzględnij znaki międzynarodowe:„私のテーブル”
  • Czy rozróżniana jest wielkość liter:„MyTable”
  • Dopasuj słowa kluczowe SQL:„tabela”

Standardowy język SQL używa podwójnych cudzysłowów dla rozdzielanych identyfikatorów:

SELECT * FROM "my table";

MySQL domyślnie używa cudzysłowów odwrotnych. MySQL może używać standardowych cudzysłowów:

SELECT * FROM `my table`;
SET SQL_MODE=ANSI_QUOTES;
SELECT * FROM "my table";

Microsoft SQL Server i Sybase domyślnie używają nawiasów. Obaj mogą używać standardowych cudzysłowów w następujący sposób:

SELECT * FROM [my table];
SET QUOTED_IDENTIFIER ON;
SELECT * FROM "my table";

InterBase i Firebird muszą ustawić dialekt SQL na 3, aby obsługiwać rozdzielane identyfikatory.

Większość innych marek baz danych używa poprawnie podwójnych cudzysłowów.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. wydajny pod względem pamięci wbudowany iterator/generator SqlAlchemy?

  2. Zrozumienie zestawów znaków i sortowania w MySQL

  3. Mac OS X — błąd środowiska:nie znaleziono mysql_config

  4. Jak mogę zmienić domyślny limit czasu połączenia Mysql podczas łączenia się przez Pythona?

  5. Skuteczne monitorowanie MySQL za pomocą pulpitów nawigacyjnych SCUMM:część pierwsza