PostgreSQL の場合
4.1.1. 識別子とキーワード < 4.1. 字句の構造
付録C SQLキーワード
- キーワードと識別子(名前)は、大文字と小文字を区別しない
※慣習的には「キーワードを大文字」「識別子(名前)を小文字」で書く - 識別子(名前)で使える文字は、
1文字目:文字(a
〜z
および発音区別符号付き文字と非Latin文字)、アンダースコア_
2文字目〜:文字、_
、数字(0
〜9
)、ドル記号$
🚨標準SQLでは、$
は識別子内では使えない。この為、これを使用するとアプリケーションの移植性が低くなる - 識別子(名前)は、二重引用符
"
を - 単一引用符
'
で囲むと「文字列」と解釈される
二重引用符"
で囲むと「識別子(名前)」と解釈される - 識別子(名前)がキーワードと被る場合、二重引用符
"
で囲めば「識別子」、囲まなければ「キーワード」と解釈される
🚨先々キーワードに追加され無さそうな言葉(英単語)を選ぶ
SQLite の場合
SQLite キーワード
SQLite のクセ、注意点、落とし穴
- SQLite は基本的に大文字と小文字を区別しない
- 識別子(名前)で使える文字は、
1文字目:文字(a
〜z
および発音区別符号付き文字と非Latin文字)、アンダースコア_
2文字目〜:文字、_
、数字(0
〜9
) - 識別子(名前)は、二重引用符
"
を- 付ければ、ハイフン、スペース等何でも使える。(日本語も使えるが使わない方が良い)
- 付ければ、大文字と小文字を区別する。(又は角カッコ
[]
も可)
- 付ければ、ハイフン、スペース等何でも使える。(日本語も使えるが使わない方が良い)
- 単一引用符
'
で囲むと「文字列」と解釈される
二重引用符"
で囲むと「識別子(名前)」と解釈される - 識別子がキーワードと被る場合、二重引用符
"
で囲めば「識別子」、囲まなければ「キーワード」と解釈される
ただし、文脈で判断できる場合は、"
で囲まなくても「識別子」と解釈する場合がある
🚨先々キーワードに追加され無さそうな言葉(英単語)を選ぶ