1
私は、Oracle DBを使用していると私はサブタイプを持つこの型があります:私は今、私はテーブルとを持っているタイプIもt_foo
Oracle - サブタイプへの参照をキャストする方法
CREATE TABLE foo OF t_foo;
INSERT INTO foo VALUES
(t_foo1(1));
のサブタイプを格納することができt_foo
のテーブルを持っている
CREATE TYPE t_foo AS OBJECT
(id INTEGER)
NOT FINAL;
CREATE TYPE t_foo1 UNDER t_foo() NOT FINAL;
をt_foo1
CREATE TABLE bar(
myfoo1 REF t_foo1 SCOPE IS foo
);
の型参照の欄には、どのように私は、の参照を挿入することができますテーブルfoo
の?
私はこの試みた:私もTREAT機能を使用しようとしましたが、それは(ORA動作しない
(REF t_foo1を期待するが、t_fooを発見した)
INSERT INTO bar VALUES
(select ref(f) from foo f where f.id = 1)
をしかし、それは私のタイプのエラーが発生します-00904:無効な識別子)。
INSERT INTO bar VALUES
(select ref(t_foo1) from foo f where t_foo1.id = 1 and TREAT(t_foo1 AS t_foo));
どうすればこのインサートを動作させることができますか?
はどうもありがとうございました!出来た! – EstevaoLuis