デフォルトでは、Oracle識別子(テーブル名、列名など)は大文字と小文字が区別されません 。引用符で囲むことにより、大文字と小文字を区別することができます(例:SELECT * FROM "My_Table" WHERE "my_field" = 1 )。 SQLキーワード(SELECT 、WHERE 、JOIN など)は常に大文字と小文字を区別しません。
一方、文字列の比較は大文字と小文字が区別されます-機密 (例:WHERE field='STRING' 'STRING'の列にのみ一致します )デフォルトで。 NLS_COMPを設定すると、大文字と小文字を区別しないようにできます。 およびNLS_SORT 適切な値に変更します(例:LINGUISTIC およびBINARY_CI 、それぞれ)。
注:データディクショナリビューを照会する場合(例:
dba_tables)引用符なしで名前を作成した場合、名前は大文字になり、2番目の段落で説明した文字列比較ルールがここに適用されます。
一部のデータベース(Oracle、IBM DB2、PostgreSQLなど)はデフォルトで大文字と小文字を区別する文字列比較を実行し、その他のデータベース(SQL Server、MySQL、SQLite)は大文字と小文字を区別しません。これは決して標準ではないので、データベースの設定に注意してください。