Oracle テーブル名: 引用符の重要性
Oracle データベース管理に関するよくある質問に、テーブル名の前後の二重引用符の使用に関するものがあります。 一見単純に見えますが、一般的なエラーを回避するには、その機能を理解することが重要です。
Oracle のデフォルトの動作では、大文字と小文字を区別しない識別子の処理が行われます。 これは、MyTable
、mytable
、および MYTABLE
がすべて同じテーブルとして扱われることを意味します。 ただし、テーブル名を二重引用符で囲むと、これが変更されます。
二重引用符は大文字と小文字を区別します。 "MyTable"
は "mytable"
や "MYTABLE"
とは異なります。 引用符を使用して作成した場合、テーブルはまったく同じ大文字と小文字と引用符で参照される必要があります。
SELECT * FROM mytable WHERE id = 1; -- Works (case-insensitive)
SELECT * FROM "mytable" WHERE id = 1; -- Fails (case-sensitive)
が大文字と小文字を区別するように定義されているために発生します。クエリには正確な大文字と引用符が必要です。"mytable"
引用符を含むテーブルの作成:
CREATE TABLE "my_data"(col1 NUMBER, col2 VARCHAR2(255));
SELECT * FROM "my_data"; SELECT * FROM "MY_DATA"; SELECT * FROM "My_Data";
SELECT * FROM my_data;
CREATE TABLE my_other_data(col1 NUMBER, col2 VARCHAR2(255));
SELECT * FROM My_Other_Data; SELECT * FROM "my_other_data"; SELECT * FROM "MY_OTHER_DATA";
SELECT * FROM my_other_data;
以上が引用符は Oracle のテーブル名にどのような影響を与えますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。