2012-04-20 9 views
-1

質問があります。引用符で囲まれていないテーブル名が機能しない

セレクト機能していない:なぜOracleのExpress Editionには、二重引用符で囲まれたテーブル名が必要ですん

select * from table 

作業を選択:答えと私のポストを編集して助けを

select * from "table" 

感謝を。私はこの事件に名前を付ける方法を混乱させた。

+0

私は英語があなたの母国語ではないことを理解していますが、質問を読めるようにするのに少しでも力を入れることができます。あなたの正確な問題は何ですか? 'select * from table'は動作しているのですか? –

+0

はい選択*テーブルからは動作していません。しかし、select * from "table"は... – Endiss

+3

この回答はあなたに役立つはずです:http://stackoverflow.com/questions/563090/oracle-what-exactly-do-quotation-marks-around-the-table-name- do – Ollie

答えて

4

それはあなたが使用している名前がキーワードである場合にのみ、二重引用符の名前が必要です(とあなたの例を - tableは、このような状況である)か、特殊文字や英数字以外の文字を含める場合(例えば"Multi word table name"を) 。

で囲ま名:表 『"。唯一の大文字と小文字が区別され

0

使用ダブルクォート は、SELECT * FROM』;

それは名前だけの引用符なしで動作しますが作成された大文字であるデフォルトではすべて引用符で囲まれていません。名前は大文字で保存されている。例えば

:。

CREATE TABLE "T1" (x number); 

-- That works: 
select * from "T1"; 

-- that works too: 
select * from t1; 

-- that works too: 
select * from T1; 

TABLE - キーワードであるあなたがそれを使用できるように。

CREATE TABLE "TABLE" (x number); 

select * from table; 

ORA-00906: missing left parenthesis 
+0

データベース、テーブル、カラム名にキーワードを使わないようにすることをお勧めします。 – Ren

+0

正解ですが、二重引用符を使用すると命名規則に反することはありません。 – Rusty

関連する問題