简单类型别名 - Oracle的最佳实践

时间:2013-11-02 13:36:17

标签: oracle user-defined-types

我有一个多模式oracle DB,其客户端帐户应该是所有模式中的varchar(50)。因此,我想像myCLIENT一样为varchar(50)分配一个新名称,这样在所有表格,sp和函数中,我只需使用MYCLIENT来定义字段,参数等,以避免错误完整。

1 - 如何在Oracle中定义新类型(最简单的方法)

2 - 根据最佳实践在哪里定义它(架构,包,DB,..)?

非常感谢

1 个答案:

答案 0 :(得分:5)

我担心没有简单的方法来实现这一目标。您可以在包中定义子类型,如下所示:

SUBTYPE myclient is VARCHAR2(50);

但您无法将其用作数据库列的类型。为此,您必须使用以下命令定义SQL类型:

CREATE TYPE myclient ...

但您只能通过这种方式定义记录类型,对象类型或集合类型。这很奇怪,但是,就像甲骨文中的一些事情...... :)