SQL3中类型和ref类型之间的区别是什么

时间:2012-04-04 21:39:56

标签: sql oracle

以下代码有什么区别?

CREATE TYPE f1_MemberType AS OBJECT (
NINum VARCHAR2(10),
Name VARCHAR2(20),
Address f1_AddressType)
/

CREATE TYPE f1_MemberType AS OBJECT (
NINum VARCHAR2(10),
Name VARCHAR2(20),
Address REF f1_AddressType)
/

修改

使用REF而不是仅为元素提供类型的原因是什么?

1 个答案:

答案 0 :(得分:1)

不同之处在于引用在内存中保留为指向实际对象的指针,然后必须将其解引用才能用作数据。

可以比复制数据本身更便宜地在对象之间复制引用(因为指针将是一个简单的数字内存地址,而不是几个字段,可能包括字符串,日期等)。这将允许在F1_MemberType的实例之间轻松复制地址,因为当你想要引用对象中的实际数据时,必须取消引用指针。