继续上文
当我们利用自定义的抽象类型创建出一个表之后应该怎么插入数据,如何查看其内容?
首先,我们要利用racle提供的构造器方法(Constructor Method)来向数据库中插入抽象类型的数据,比如:
insert into CUSTOMER values
(1, PERSON_TY('ComiCoder', ADDRESS_TY('WYXL ST','HZ','ZJ',310000)));
然后,我们就可以看到CUSTOMER表中出现了一个新列;
但是我们能否通过如下的语句来查看该CUSTOMER的Name呢?
Select Name
from CUSTOMER;
答案是不行!你会得到一个ORA-00904的错误提示;
这是因为Name不是CUSTOMER中的列,它是PERSON_TY抽象数据类型的一个属性,可以这样
Select c.Person.Name
from CUSTOMER c
(注意,访问数据类型需要利用表的别名,因为Person是CUSTOMER的一个属性,所以需要给CUSTOME取一个小名c)
同理,若想得到Person所住的街道可以这样
Select c.Person.Address.street
from CUSTOMER c
是不是很像OOP的编程写法,木有错,面向对象面起来都差不多。
我们再看看其他的SQL写法,比如,我们能否查出以H开头的城市中居住的人呢?
Select c.Person.Name, c.Person.Address.City
from CUSTOMER c
where c.Person.Address.City like 'H%'
如果该人搬家了,我们能否更新其街道地址呢?当然,下面这个语句可以将原来住在WYXL ST的人的地址修改为ZJH ST:
update CUSTOMER c
set c.Person.Address.Street = 'ZJH ST'
where c.Person.Address.Street = 'WYXL ST'
可以看出,对象关系数据库中的查询,更新等会变得稍微复杂一些,因为属性之间的关系变的更加复杂了,所以,用户需要这种复杂性和对象数据库能够带来的好处之间作出权衡。
分享到:
相关推荐
资源名称:Oracle学习笔记-日常应用、深入管理、性能优化内容简介:Oracle学习笔记-日常应用、深入管理、性能优化Oracle 11g是最具代表性的高端关系型数据库管理系统,它在世界各地的大型商务数据库应用系统中被广泛...
Oracle数据库是企业级关系型数据库管理系统,广泛应用于各种规模的企业中。本篇文章将深入探讨Oracle数据库在Windows环境下的服务,帮助读者更好地理解和管理Oracle系统。 1. OracleServiceSID:这是Oracle数据库的...
│ ORACLE学习笔记(二)SQLPLUS基础 - lvhuiqing的专栏 - CSDN博客.mht.lnk │ oracle技巧.txt │ ORACLE的索引和约束详解 - Oracle10g - 沪城篱笆.mht │ oracle里常用命令 - Oracle - 51CTO技术论坛_中国领先的IT...
* Oracle 数据库是关系型数据库管理系统,支持 SQL 语言,用于存储和管理大量数据。 * Oracle 数据库的核心组件包括 Database、Instance、Schema 等。 二、数据类型 * Oracle 数据库支持多种数据类型,包括数字...
Oracle 11g是最具代表性的高端关系型数据库管理系统,它在世界各地的大型商务数据库应用系统中被广泛应用。本书设计了大量的应用情景,介绍了数据库管理员和开发人员常用的管理、维护和优化Oracle 11g数据库的技术和...
Oracle数据库是一种广泛使用的关系型数据库管理系统,其在企业级应用中占据重要地位。本文主要针对ORACLE数据库的学习笔记进行深入解析。 首先,SQL是Structured Query Language的缩写,即结构化查询语言,它是用于...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,由甲骨文公司(Oracle Corporation)开发和维护。本学习笔记旨在提供全面、深入的Oracle知识体系,帮助读者从基础到高级掌握Oracle数据库的使用。 首先,...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,它在企业级应用中扮演着核心角色。以下是对Oracle数据库课堂笔记的详细解析,涵盖了从基础到进阶的重要知识点。 第一讲:Oracle简介 Oracle数据库是由甲骨...
Oracle和SQL Server是两大主流的关系型数据库管理系统,广泛应用于企业级的数据存储和处理。这篇学习笔记将深入探讨这两个系统的概念、特性和应用。 一、Oracle数据库系统 Oracle数据库是由甲骨文公司开发的一款...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其在企业级应用中占据着核心地位。韩顺平老师的Oracle学习视频是一套系统且深入的教学资源,旨在帮助初学者和进阶者掌握Oracle的相关知识。以下是对Oracle...
在 MySQL 中,常见的关系型数据库包括 Oracle、SQL Server 和 DB2。 【数据库的创建与管理】 创建数据库可以使用 DDL(Data Definition Language)语句,例如 `CREATE DATABASE dbname;`。当数据库已存在时,尝试...
Oracle是全球最流行的商业关系型数据库管理系统之一,其在企业级数据存储、管理和处理方面具有广泛的应用。"ORACLE新体系-学习笔记.rar"显然是一份详细整理的Oracle数据库学习资料,旨在帮助用户深入理解Oracle的新...
Oracle数据库是全球最广泛使用的商业关系数据库管理系统之一,以其高效、稳定和强大的功能著称。以下是一些关于Oracle的重要知识点: 1. 数据库概念:Oracle数据库是一个存储结构化数据的系统,它允许用户创建、...
Oracle数据库是全球最广泛使用的商业关系型数据库管理系统之一,它以其强大的功能、高效的数据处理能力和高可用性而闻名。这份“Oracle数据库笔记”涵盖了Oracle数据库的基础知识和高级特性,为学习和理解Oracle提供...
Oracle数据库是全球最广泛使用的商业关系型数据库管理系统之一,由美国甲骨文公司(Oracle Corporation)开发和维护。MSDN(Microsoft Developer Network)是微软提供的一系列开发资源和技术支持的集合,其中包括对...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,尤其在企业级应用中占据重要地位。对于初学者来说,从零开始学习Oracle数据库是一项挑战,但有了正确的资源和指导,这个过程可以变得轻松且有趣。本教程旨在...
Oracle是一种广泛应用的关系型数据库管理系统,尤其在企业级应用中占据重要地位。对于初次接触Oracle的人来说,理解其安装、卸载过程及基本操作是至关重要的。 一、下载地址 Oracle的下载通常在官方网站上进行,你...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,SQL(Structured Query Language)是用于管理关系数据库的标准语言。在Oracle SQL的学习过程中,有许多关键知识点需要掌握,这些知识点将帮助你有效地操作和...
SQL(Structured Query Language)是用于处理关系型数据库的标准语言,主要包括数据查询、数据操纵、数据定义和数据控制四个部分。在Oracle中,SQL用于执行如增、删、改、查等操作。 1. 数据查询:SELECT语句是SQL...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统之一,它以其高性能、高可用性和安全性著称。本学习笔记将带你深入探索Oracle的以下几个关键知识点: 1. **数据库基础**:涵盖数据库的概念、数据库系统的...