プロが教える店舗&オフィスのセキュリティ対策術

初歩的な質問かと思いますが、宜しくお願い致します。
Oracle10gでViewを作成する際に、以下のようなSQLを発行しています。
SELECT 列名1 FROM テーブル名1

この際、スケール(小数点)ありの列名を指定すると
「指定した列名の個数が無効です」というエラーが表示されてしまうのですが、エラー原因がわかりません。
(スケールなしの列名は問題なし)

お手数ですが、ご教示いただけませんでしょうか。

A 回答 (1件)

できればSQLの提示してください。



私の10g(release2ですが)環境で以下のテーブルとデータを作成します。

create table hoge (
p_code number(4) primary key,
name_1 varchar2(20),
score number(4,2)
);

insert into hoge values(1,'hoge1',6.2);
insert into hoge values(2,'hoge2',9.8);
insert into hoge values(3,'hoge3',null);

そこで
create view v_hoge(score_val) as select score from hoge;
を実行するとビューも作成されてselectで確認できます。列別名を指定しないのであれば
create view v_hoge as select score from hoge;
でうまくいくはずです。

列別名を入れる場合、selectの列数と同じ数を指定しないと「指定した列名の個数が無効です」のエラーが表示されます。
    • good
    • 1
この回答へのお礼

ossan_hiro様 ご回答頂き、有難うございます。
ご指摘の内容を確認しましたところ、Viewの以前作成したSELECT 定義が有効になっており、エラーが発生していたようです。
再度、viewの定義を再作成することで、無事表示できるようになりました。
重ねて御礼申し上げます。

お礼日時:2006/07/19 13:11

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す


このQ&Aを見た人がよく見るQ&A