2、 抽象数据的引用。

  当建立好抽象数据类型的时候,数据库管理员就可以向基本数据类型那样,引用抽象数据类型,包括在建立表或者对相关字段进行赋值的时候,都这么方便。

  如在建立表的时候,可以把这个抽象数据类型直接跟某个字段关联起来。如

  Create Table USERS

  (F­­_Adress Adress );

  上面这个语句就是在USERS表中建立了一个F_Adress的字段,其数据类型为Adress。

  若要对这个字段赋值的话,需要注意一个问题,要依次输入赋值的内容,顺序不能够颠倒。如按照上面的定义,用户在赋值的时候,需要依次输入街道、城市、省份、邮编等等内容。若用户在输入的过程中,忘记输入城市的话,则省份的内容将会直接输入到城市中。另外,若数据类型不匹配的话,则就直接会有错误提示。当然数据库管理员也可以根据需要,为特定的数据内容设置默认值,以方便管理。

  三、抽象数据类型管理经验分享。

  笔者平时在数据库设计中,非常钟爱这个抽象数据类型。笔者十多年的数据库管理经验证明,利用抽象数据类型可以大幅度的简化我们平时的工作。为此笔者在这方面也积累了不少的经验。这里就拿出来跟大家分享一下。

  经验一:利用脚本建立抽象数据类型。

  对于一些常用的抽象数据类型,数据库管理员最好能够利用脚本来建立抽象数据类型。如果每次建立数据库的时候,都通过手写代码来完成的话,工作量会比较大。如笔者在日常工作中,就把常用的一些抽象数据类型,如员工姓名、地址、产品规格等抽象数据类型都保存在一个SQL脚本中,等到需要的时候,只需要运行这个脚本即可。这就可以减少一些不需要的编码的编写,从而提高数据库开发设计的效率。

  经验二:对于多个数据库对象中经常需要用到的数据,最好采用抽象数据类型。

  如在一个ERP系统中,产品基本信息的产品规格可能包含多个部分的内容,如产品的颜色、尺寸、大小、外处理方式等等。而在采购订单、进货单等地方有需要多处进行引用。为了保障数据的一致性与统一性,最好为产品规格设置一个抽象数据类型 。如此的话,一方面在其他对象中引用这个内容的话,不用一个个字段的引用,从而简化应用程序的设计; 另一方面,因为这些信息组合才能够唯一的定位产品,所以,在采购订单或者其他单据中统一的显示,非常的关键。为此,若能够一个数据类型来包含这些内容的话,则应用程序设计时就可以减少错误的发生。

  经验三:要考虑不同数据库库的兼容性问题。

  抽象数据类型,它是Oracle数据库对标准SQL语句的一种扩展。所以,虽然Oracle数据库提供了抽象数据类型的功能,但是,其他品牌的数据库不一定支持。这也就是说,这个抽象数据类型的兼容性并不时很好。如果数据库管理员能够预见在以后可能会把数据库迁移到其他平台的数据库中,则这个抽象数据类型就需要慎用。否则的话,在数据库移植的过程中,就会平白的遇到很多麻烦。

  另外,由于标准的SQL语句不支持这个抽象数据类型,所以,如果采用其他的非Oracle数据库出的SQL语句,就可能会造成额外的困扰。如有些数据库管理员喜欢采用Excle等工具作为Oracle数据库管理的辅助工具。若在数据库中采用了抽象数据类型,那么Excle软件将无法很好的支持Oralce数据库。这也是Oracle数据库管理员在考虑采用抽象数据类型需要考虑的内容。

  最后,有一个值得庆幸的就是,这些抽象数据类型的执行计划与其他Oracle数据库系统默认的内部数据类型的执行计划相同。这也就是说,抽象数据类型的引入对SQL语句的执行性能将不会产生任何影响。换一句话说,采用抽象数据类型并不会降低数据库的性能,相反可以提高数据库数据管理的一致性与统一性,从而让数据管理起来更加的容易。所以说,如果不考虑抽象数据类型的兼容性问题的话,那么抽象数据类型将是数据库管理员规划数据的一个好帮手。

抽象数据类型,让Oracle数据库数据管理更加容易相关推荐

  1. oracle 数据库修改数据类型,保留原来数据

    遇到项目,原来是数据类型不能满足当前需求,要保留旧数据的前提下修改(或扩大)某一列的数据类型 在oracle数据库中,有数据的列是不能被修改的,思路是这样的 (1)在原数据表中增加新列,新列的列名只要 ...

  2. Oracle数据库教程

    原文连接:https://www.w3cschool.cn/oraclejc/oraclejc-eswu2qqq.html Oracle数据库教程 Oracle数据库是什么? 数据文件(dbf) 表空 ...

  3. oracle数据库sql培训,Oracle数据库SQL语言实战培训教程(全面、详细、案例、精讲)套餐...

    风哥oracle数据库SQL语言实战培训教程(案例.精讲)套餐,DBA必备技能. 套餐介绍: 风哥Oracle数据库SQL语言实战培训教程(案例.精讲)套餐,DBA必备技能. 内容: SQL语言基础入 ...

  4. Oracle数据库学习基础

    1.Oracle简介 数据:data 数据库:database DB 数据库管理系统 database Management system DBMS 数据库系统 database system DBS ...

  5. Oracle数据库之数据类型

    Oracle数据库之数据类型 Oracle基本数据类型(亦叫内置数据类型,internal datatypes或built-in datatypes)可以按类型分为:字符串类型.数字类型.日期类型.L ...

  6. java mysql nclob_java语言操作Oracle数据库中的CLOB数据类型 (转)

    java语言操作Oracle数据库中的CLOB数据类型 (转)[@more@] 有关字段类型的相关信息可以查阅oracle技术网.下面摘抄一些有关blob.clob等类型的说明.又便于大家的了解. 字 ...

  7. 【转】oracle数据库NUMBER数据类型

    原文:http://www.jb51.net/article/37633.htm NUMBER ( precision, scale)a)  precision表示数字中的有效位;如果没有指定prec ...

  8. 查询oracle数据库的表格数据类型,excel表格中如何查询数据库数据类型-我想把excel表格中的数据导入oracle数据库中,想在......

    在excel表里,什么是:字段.记录.数据类型.多工... declare @t table(id numeric(18,2)) insert into @t SELECT   col1 FROM   ...

  9. mysql的number类型对应的db2_【转】oracle数据库NUMBER数据类型

    NUMBER ( precision, scale)a)  precision表示数字中的有效位;如果没有指定precision的话,Oracle将使用38作为精度. b)  如果scale大于零,表 ...

最新文章

  1. 解决TensorBoard训练集和测试集指标只能分开显示的问题(基于Keras)
  2. IntelliJ 平台 2020 年路线图
  3. PyTorch基础-softmax函数mnist数据集识别-03
  4. ubuntu install scite and 中文乱码解决
  5. 统计了50万人的身高数据才发现:大家都爱虚报身高
  6. [转]Struts2.3.16.1+Hibernate4.3.4+Spring4.0.2 框架整合
  7. yeomanbower
  8. android listpreference 自定义,android ListPreference 不显示内容 设置默认值
  9. fj怎么样_评测:丰田FJ 酷路泽动力及性能怎么样是否值得入手
  10. JS SDK的标准创建原则
  11. (OCR公式)Mathpix Snipping Tool
  12. HTC官方通用解锁教程(附一键解锁工具)
  13. tl494cn逆变器电路图_基于TL494CN的车载逆变器电路设计
  14. ZoomIt 屏幕放大 缩小 屏幕画笔 演示 手写笔迹 倒计时 秒变白板 pointofix
  15. 16进制是否能整除 求余的运算
  16. 虚拟机实现远程桌面连接
  17. AboutCG的优惠卷如何使用
  18. ftpserver配置
  19. S5PV210 I2C电容触摸屏驱动
  20. 有吧友需要PDF的下载站点,好吧,我这边汇总一下

热门文章

  1. linux文件系统 环形结构图,环形缓冲器(转)
  2. 数据结构之图的存储结构:邻接多重表
  3. KVM虚拟机禁止上网(路由转发)
  4. Lockdoor Framework:一套自带大量网络安全资源的渗透测试框架
  5. Sparta(斯巴达)——信息收集扫描爆破集成
  6. shell 字符串删除特定字符
  7. 转载:警惕!!骗人的“培训机构” “北大青鸟”事件
  8. 行为型模式:迭代器模式
  9. Vue.js入门系列教程(二)
  10. 从LeNet到SENet——卷积神经网络回顾