とSQLビューを作成します。私は、次のタイプと表持つオブジェクト識別子
CREATE TYPE person AS OBJECT (
dni VARCHAR2(10),
name VARCHAR2(30),
surname VARCHAR2(100)
)NOT FINAL;
CREATE TYPE runner UNDER person (
runningClub VARCHAR2(100)
);
CREATE TYPE race AS OBJECT (
name VARCHAR2(50),
city VARCHAR2(50),
distance INTEGER
)NOT FINAL;
CREATE TYPE participation UNDER race(
runner_id runner,
year VARCHAR(4),
time INTEGER
);
CREATE TABLE participations OF participation;
をそして今、私はVIEWを作成する必要があり、私はこの試みた:
CREATE VIEW AvgTime10k OF PARTICIPATION WITH OBJECT IDENTIFIER (runner_id, year, time) AS
SELECT runner_id, time FROM PARTICIPATIONS WHERE DISTANCE = '10';
しかし、私は取得エラー次のとおりです。エラーSQL:ORA-01730:無効な列名が指定されています
なぜですか?これはオブジェクトリレーショナルSQLで初めてのことですが、これは私には苦労しています。ありがとう!
これは、オブジェクトデモの場合でも、奇妙なモデルのようです。それぞれの「参加」オブジェクトは、レースのすべての共通フィールドを繰り返します。 「参加」には「レース」と「ランナー」の属性があるべきではありません。レースの定義の一部に「年」(または完全レースの日付)を使用しないでください。 –