11.嵌套表(了解)

注意:基本不用。

例如:一个部门可能承接多个项目,那么按原始方法设计,应该这样定义两张表:

CREATE TABLE department

(

deptno        NUMBER(2)    PRIMARY KEY,

dname        VARCHAR2(50)    NOT NULL,

);

CREATE TABLE project

(

proid        NUMBER(4)    PRIMARY KEY,

porname        VARCHAR2(50)    NOT NULL,

pordate        DATE        NOT NULL,

deptno        NUMBER(2),

CONSTRAINT department_project_deptno FOREIGN KEY(deptno) ON DELETE CASCADE

);

这是最通用的、最正确的操作,但是Oracle中引入了嵌套表的概念,可以直接将项目表的类型作为一个部门表的字段类型,达到嵌套的功能。

但完成嵌套表的制作要首先指定嵌套表的类型。因为数据库在创建数据表的时候都要制定字段的类型。

类型创建成功之后,并不意味着可以直接使用,因为此类型是一个完整的类型,所以要为它指定一个名称。下面的语句是给project_ty类型指定了名称:project_nt

以上的操作表示以后直接使用project_nt表示project_ty类型,就类似于varchar2表示字符串是一样的。下面可以使用此类型创建部门表。

插入数据时需要指定每一个project_ty类型

此时查询嵌套表,可以返回多个项目

如果要查一个部门的全部项目,就要查嵌套表

范例:更新项目编号为1001的项目名称,将此项目名称更新为"测试项目"

12.可变数组(了解)

就是升级版的嵌套表。可变数组实际上就是将内部的嵌套表的内容的长度进行了限制。

例如:一个部门有多个工人,如果按照可变数组的做饭,首先要定义一个工人的类型。

下面再定义数组类型

定义部门表:一个部门中可能存在多个工人

插入测试数据:

oracle 如何数组变成表,Oracle从零开始19——表的管理09——嵌套表和可变数组相关推荐

  1. 19.Oracle10g服务器管理恢复--RMAN表空间恢复(练习33)

    在练习12-14中我们学习了如何将数据库中删除的表恢复到错误发生之前,而不需要恢复整个数据库.Oracle可以恢复数据库的一个表空间,此时还原表空间数据文件,然后应用归档日志文件直到失效前或错误发生处 ...

  2. oracle有索引的集合,oracle中记录和集合

    * oracle复合数据类型 PL/SQL有两种复合数据结构:记录和集合.记录由不同的域组成,集合由不同的元素组成. */ /* 一.记录类型 类似C语言中的结构,有两种定义方式:显式定义和隐式定义. ...

  3. oracle數據庫any,Oracle权限集合全集

    alter any cluster 修改任意簇的权限 alter any index 修改任意索引的权限 alter any role 修改任意角色的权限 alter any sequence 修改任 ...

  4. ios 替换数组中元素_ios可变数组的所有操作

    #pragma mark 创建数组c NSMutableArray * array =[[NSMutableArray alloc] initWithObjects:@"a",@& ...

  5. ios可变数组的操作

    #pragma mark 创建数组c NSMutableArray * array =[[NSMutableArray alloc] initWithObjects:@"a",@& ...

  6. 【Oracle】record varray (associative array 关联数组) table (nested table type 嵌套表类型)和%type、%rowtype的使用详解

    官方文档: https://docs.oracle.com/en/database/oracle/oracle-database/12.2/lnpls/plsql-data-types.html#GU ...

  7. oracle 语法分析表,Oracle 语句优化分析说明

    Oracle 语句优化分析说明 更新时间:2009年09月17日 21:52:20   作者: Oracle 语句优化技巧,大家可以参考使用,使你的oracle运行效率更高更好. 1. ORACLE ...

  8. 创建emp表 oracle,Oracle中创建和管理表详解

    Oracle中创建和管理表详解 更新时间:2013年08月01日 15:44:16   作者: 以下是对Oracle中的创建和管理表进行了详细的分析介绍,需要的朋友可以过来参考下 SQL> /* ...

  9. oracle遍历表做查询,oracle 语句之对数据库的表名就行模糊查询,对查询结果进行遍历,依次获取每个表名结果中的每个字段(存储过程)...

    语句的执行环境是plsql的sql窗口, 语句的目的是从整个数据库中的所有表判断 不等于某个字段的记录数 . 代码如下: declare s_sql clob:=''; -- 声明一个变量,该变量用于 ...

最新文章

  1. 分析6千万条GitHub帖子,发现你的工作状态与表情符号强相关
  2. 一文打尽目标检测NMS | 精度提升篇
  3. node-rsa加密,java解密调试
  4. php网站发布工具_7款本地搭建PHP环境工具推荐
  5. c++ 检查缓冲大小与记录大小是否匹配_后端程序员不得不会的 Nginx 转发匹配规则...
  6. linux下面的j2sdk的安装和配置过程
  7. linux mint关于web开发的相关环境配置
  8. javascript cookie传统用法
  9. Linux下进行源码安装时如何避免找不到那些使用--prefix指定目录安装的依赖
  10. 局域网计算机共享加密码,局域网文件共享设置密码的方法
  11. 乐玩模块脚本实战教程辅助脚本制作开发视频
  12. 计算机基础知识和运用2作图,2020年9月统考《计算机应用基础》基础知识试题及答案2...
  13. 5, Swift tableView点击收起展开的效果
  14. 淘宝6.18叠猫猫赚猫币自动生成
  15. H3C s5820v2 堆叠2台机器配置说明
  16. html自动增加文本框,html创建文本框
  17. 取消微信抢票的服务器,微信抢票怎么取消?
  18. Single Image Dehazing via Multi-Scale Convolutional Neural Networks
  19. java1.8 Lambda拉姆达表达式深入探究
  20. ps4 虚拟服务器 设置,谁说PS VR只能适配PS4主机? 大神来教你完美认证PC

热门文章

  1. html tab与jQuery,js与jquery分别实现tab标签页功能的方法
  2. linux tar压缩包目录,如何在Linux上使用tar命令解压和压缩文件
  3. 英语语法---主语详解
  4. 第四范式恭祝大家新春快乐!
  5. 百威中国签约第四范式 让夏日爽快人人尽享
  6. PyTorch随笔-5
  7. 【竞赛相关】Kaggle知识点:入门到进阶的10个问题
  8. 浅析掌握 Python数据分析与展示的几个要点
  9. 【Python基础】分享5 款超牛逼的 Jupyter Notebook 插件!
  10. 【CV】图像分割2020,架构,损失函数,数据集,框架的整理和总结