我的编程空间,编程开发者的网络收藏夹
学习永远不晚

PLSQL中的内存表--Index By Table

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

PLSQL中的内存表--Index By Table

其实内存表有点类似于java中的数组,但是它有比起数组更强大的地方。

1.首先来简单介绍内存表的作用:

  •   使用BINARY_INTEGER 类型构成的索引主键

  •    简单类型 或者用户自定义类型的字段作为具体的数组元素

2.如何来使用内存表类型呢?

      定义内存表类型

        TYPE type_name IS  TABLE OF 存储类型(number , employees.last_name%TYPE , employees%ROWTYPE , varchar2)    


             INDEX BY (BINARY_INTEGER,varchar2(80)..) 

               ---varchar2(80)表示下标可以通过字符串来访问,这比java中数组功能强大

     声明该类型变量

         identifier  type_name


3.内存表中的一些属性和方法

   赋值:

        identifier(1) := 'Jams'    --这是index by binary_integer

        identifier('A') := 'Jams'  -- 这是index by varchar2

       与java中数组区别就是内存表可以用字符串作为下标

    3-1.count方法:

         identifier.count  --返回内存表中行的数目

    3-2.exists方法:

        identifier.exists(1) --判断下标为1的元素存不存在

    3-3.first 和 last属性:

        first:返回第一行的索引

        last: 返回最后一行的索引

first 和 last的用法:

  一般使用在遍历内存表的情况

for i in identifier.first .. identifier.last  loop

 ............
end loop

这里必须注意两点:

   1.如果内存表中没有任何数据,但是你却通过这种方式遍历它,会报错,所以在遍历前应该用

count方法来做一次判断

    2.假如内存表中的数据下标不连续怎么办?

比如 内存表只有identifier(2), identifier(5),

当遍历到下标为1,3,4时,要做异常或报错处理,否则会报错。


 3-4.delete方法:

            identifier.delete(1) --删除内存表中下标为1的元素

            identifier.delete --删除内存表所有元素

     3-5.next和prior属性:

         identifier.next(1)  --返回内存表中下标为1行的下一行索引

            identifier.prior(2) --返回内存表中下标为2行的上一行索引



这里附带上INDEX BY BINARY_INTEGER的作用

    --http://blog.itpub.net/26690043/viewspace-722081/

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

PLSQL中的内存表--Index By Table

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

MySQL中的临时表与内存表

临时表和内存表均为MySQL中用于存储特定会话或查询结果的表。临时表由特定会话创建并自动删除,而内存表存储在服务器内存中,数据不持久化。临时表仅对创建它们的会话可见,而内存表对所有会话可见。临时表数据在会话结束时删除,而内存表数据在服务器重启或崩溃时丢失。临时表性能通常比持久表快,而内存表提供最佳性能。临时表用于存储中间查询结果或临时数据,而内存表用于存储经常访问的数据。在选择临时表还是内存表时,需要考虑持久性、性能、内存使用和表大小等因素。
MySQL中的临时表与内存表
2024-04-02

element-ui中页面缩放时table表格内容错位的解决

这篇文章主要介绍了element-ui中页面缩放时table表格内容错位的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2022-11-13

SQLServer 错误 41350 警告:在为加密启用的数据库中创建了具有持续性 SCHEMA_AND_DATA 的内存优化表。 不会对内存优化表中的数据加密。 故障 处理 修复 支持远程

详细信息 Attribute 值 产品名称 SQL Server 事件 ID 41350 事件源 MSSQLSERVER 组件 SQLEngine 符号名称 HK_CREATE_TABLE_WITH_ENCRYPTION ...
SQLServer 错误 41350 警告:在为加密启用的数据库中创建了具有持续性 SCHEMA_AND_DATA 的内存优化表。 不会对内存优化表中的数据加密。 故障 处理 修复 支持远程
2023-11-05

SQLServer 错误 41349 警告:为包含具有持续性 SCHEMA_AND_DATA 的一个或多个内存优化表的数据库启用了加密。 不会对这些内存优化表中的数据加密。 故障 处理 修复 支持远程

详细信息 Attribute 值 产品名称 SQL Server 事件 ID 41349 事件源 MSSQLSERVER 组件 SQLEngine 符号名称 HK_ENCRYPTION_ON 消息正文 ...
SQLServer 错误 41349 警告:为包含具有持续性 SCHEMA_AND_DATA 的一个或多个内存优化表的数据库启用了加密。 不会对这些内存优化表中的数据加密。 故障 处理 修复 支持远程
2023-11-05

编程热搜

目录