130.Oracle数据库SQL开发之 数据库对象——NOTINSTANTIABLE对象类型
欢迎转载,转载请标明出处:http://blog.csdn.net/notbaron/article/details/50087105
对象类型可标记为NOTINSTANTIABLE,这样可防止创建该类型的对象实例。如果某个对象类型仅仅用作抽象的超类型且绝不创建此类型的任何对象时,就可以将其标记为NOT INSTANTIABLE。
语句创建名为t_vehical的类型。
CREATE TYPE t_vehicle AS OBJECT (
id INTEGER,
make VARCHAR2(15),
model VARCHAR2(15)
)NOT FINAL NOT INSTANTIABLE;
/
创建t_car子类型如下:
CREATETYPE t_car UNDER t_vehicle (
convertibleCHAR(1)
);
/
创建表如下:
CREATE TABLE vehicles OF t_vehicle;
CREATE TABLE cars OF t_car;
CREATE TABLE motorcycles OF t_motorcycle;
object_user2@PDB1> select * from cars;
IDMAKE MODEL C
---------- --------------- ----------------
1 Toyota MR2 Y
object_user2@PDB1> select * from motorcycles;
IDMAKE MODEL S
---------- --------------- ----------------
1 Harley-Davidson V-Rod N