在我的程序中,我需要创建自己的对象类型 - 分数 我可以创建它:
CREATE OR REPLACE TYPE fraction AS OBJECT ( integer number, numerator number, denominator number);
可以使用像分数
这样的列创建表格 CREATE TABLE own_table (first fraction, second fraction);
这都是o.k.如何自己查看像分数一样的列?可能是一些方法或其他什么?列只有我的分数类型。 Nessesary只为用户更改表中的视图。
重新结果:
SELECT * FROM own_table;
+first +++++ second
1(1/2) ++++ 2(49/203)
3(32/34) ++ 12(3/7)
答案 0 :(得分:2)
您可以使用点分表示法来访问对象成员,但在选择时,您似乎必须使用表名的别名。
您也无法命名列integer
。
如果您只是想select * from something
,您需要在桌面上查看。
例如
CREATE OR REPLACE own_view (first, second) AS
SELECT ot.first.i || '(' || ot.first.numerator ||
'/' || ot.first.denominator || ')',
ot.second.i || '(' || ot.second.numerator ||
'/' || ot.second.denominator || ')'
FROM own_table ot;
此外,还有一些docs访问Oracle对象类型。