度量快速开发平台-专业、快速的软件定制快开平台

标题: oracle中的抽象数据类型 [打印本页]

作者: 张兴康    时间: 2020-3-25 14:25
标题: oracle中的抽象数据类型
此类型是包含一个或多个子类型的数据类型,并且这些数据类型并不局限于标准的oracle数据类型
如:create or replace type t_mm as object(col number(3),
        col2 varchar2(20))/
此时可以在创建表时使用该类型,如下
       Create table test (aa varchar2(5),bb t_mm, cc number(10))
插入记录:
       Insert into test values('cccc', t_mm(1,'col'))
类型声明:
      用户定义的数据类型也可以声明为 final,not final,instantiable, not instantiabe
Not final表示允许类型派生子类型。默认是final
      create or replace type t_mm as object(col number(3),col2 varchar2(20)) Not final
not instantiabe表示类型没有构造函数。


作者: 万望    时间: 2020-3-25 22:12
姓名,其实包括两个部分,分别为姓与名。在没有抽象数据类型之前,在数据库设计的时候,往往需要利用两个字段来保存这个姓名内 容,如First_name与Last_name等等。这主要是因为在很多时候,前台应用程序只需要用到姓即可,因为在称呼别人的时候,往往不会连名带姓 的叫。如在CRM系统中,若利用CRM系统自带的邮件系统给客户发送邮件的时候,台头往往是李公、张公等等。而不会带来名字。为此,就需要把姓与名分开来 保存。

  此时,若没有抽象数据类型的话,则在数据库中就需要设立两个字段来处理。但是,在Oracle数据库8以后的版本,包括现在最新的数据库版本, 都有一个抽象数据类型,专门来处理这些问题。简单的讲,抽象数据类型就是一些可以作为单独实体的小的基本数据类型的集合。或者说,抽象数据类型是用户自己 做的一个箱子,里面有很多抽屉,而每个抽屉就是一个原始的数据类型,如INT或者Varchar数据类型。把几个基本的数据类型根据不同的需要,组合成一 个新的抽象数据类型,这就让数据库管理员在处理数据的时候,更加的容易;而且容易控制,减少出错的几率。
作者: 万望    时间: 2020-3-25 22:15
使用抽象数据类型的好处:
一是可以重复使用;
二是灵活性;
三是可以实现对数据很好的封装。
作者: 张兴康    时间: 2020-3-26 17:52
万望 发表于 2016-4-25 22:15
使用抽象数据类型的好处:
一是可以重复使用;
二是灵活性;

补充得挺好嘛




欢迎光临 度量快速开发平台-专业、快速的软件定制快开平台 (http://bbs.delit.cn/) Powered by Discuz! X3.2