如何将DB2硬编码视图转换为Oracle视图
我在DB2 LUW中创建了这个视图:如何将DB2硬编码视图转换为Oracle视图,oracle,view,db2,Oracle,View,Db2,我在DB2 LUW中创建了这个视图: CREATE VIEW SCHEMA.TYPE(TYPEID, TYPENAME) AS SELECT TYPEID, TYPENAME FROM TABLE(VALUES(0,'A'), (1,'B'), (2,'C'), (3,'D'), (4,'E'), (5,
CREATE VIEW SCHEMA.TYPE(TYPEID, TYPENAME) AS
SELECT TYPEID, TYPENAME
FROM TABLE(VALUES(0,'A'),
(1,'B'),
(2,'C'),
(3,'D'),
(4,'E'),
(5,'F')) T(TYPEID, TYPENAME)
我想将相同的视图移动到Oracle数据库(10g)。
我发现Oracle中存在该表,但VALUES函数不存在
你知道如何变换视图吗
谢谢我唯一想到的是:
CREATE VIEW SCHEMA.TYPE(TYPEID, TYPENAME)
AS
SELECT 0,'A' FROM DUAL
UNION
SELECT 1,'B' FROM DUAL
UNION
SELECT 2,'C' FROM DUAL
UNION
SELECT 3,'D' FROM DUAL
UNION
SELECT 4,'E' FROM DUAL
UNION
SELECT 5,'F' FROM DUAL
另一种选择是创建表并将值插入其中。然后,您将获得额外的好处,能够对其进行约束、引用完整性和工作。让它成为一个索引表。另外,它可能会给使用它的查询带来性能上的好处。作为一个小的改进,“UNION ALL”而不是“UNION”。谢谢!此视图是第三方数据库的帮助器。我们不希望添加可能影响此数据库升级过程的引用。