是否可以在oracle中创建“类型同义词”?类似的东西:
CREATE PUBLIC SYNONYM EmailType FOR VARCHAR2(120);
答案 0 :(得分:3)
您不能这样做,但您可能想要使用SUBTYPE。 将SUBTYPE声明放在包内并使用它。
CREATE OR REPLACE PACKAGE SUBTYPES_PKG IS
SUBTYPE EMAIL IS VARCHAR2(120);
END;
答案 1 :(得分:2)
您正在寻找的内容在其他数据库中称为“域” - 并且Oracle中没有域。关于这些坏消息我很遗憾。要在Oracle中使用TYPE,您需要类似
的内容CREATE OR REPLACE TYPE EMAILTYPE AS OBJECT
(
strEmail VARCHAR2(120)
)
然后你可能需要定义构造函数和方法来操作你的类型。
分享并享受。
答案 2 :(得分:0)
我目前无法访问数据库,所以我会在早上办理登机手续,但我相当确定你能做到这一点。虽然您无法将对象创建为公共同义词,但您可以在几乎任何对象上创建同义词。
CREATE OR REPLACE TYPE EmailType AS OBJECT( EMail VARCHAR2(120));
create or replace public synonym emailtype for emailtype;