热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

oracleloop函数,循序渐进openGauss:构建一个基本的函数Loop测试Update循环墨天轮...

在数据库的测试实验中,我们竟成需要通过循环进行基本的功能验证测试,在Oracle中通过forLoop循环,同样可以在openGaus

在数据库的测试实验中,我们竟成需要通过循环进行基本的功能验证测试,在 Oracle 中通过 for ... Loop 循环,同样可以在 openGauss 中实现。

首先构建一个测试表:

postgres=# create table enmo as select row_number() OVER (ORDER BY name) id ,name from pg_settings;

INSERT 0 542

postgres&#61;# select * from enmo where id <10;

id | name

----&#43;--------------------------------

1 | DateStyle

2 | FencedUDFMemoryLimit

3 | IntervalStyle

4 | RepOriginId

5 | TimeZone

6 | UDFWorkerMemHardLimit

7 | acce_min_datasize_per_thread

8 | acceleration_with_compute_pool

9 | advance_xlog_file_num

(9 rows)

创建一个包含一定功能的 Loop 函数&#xff1a;

postgres&#61;# create or replace function enmoloop(em1 integer[],em2 bigint) returns

postgres-# void AS $$

postgres$# declare ini integer;

postgres$# declare num integer;

postgres$# begin

postgres$# ini :&#61;1;

postgres$# num &#61; 1;

postgres$# for ini in 1..em2 loop

postgres$# UPDATE enmo SET id&#61;em1[num] &#43; 2020 WHERE id &#61; ini;

postgres$# num &#61; num &#43;1;

postgres$# if (num>6) then

postgres$# num &#61; 1;

postgres$# end if;

postgres$# end loop;

postgres$# end;

postgres$# $$ LANGUAGE plpgsql;

CREATE FUNCTION

调用这个函数&#xff1a;

postgres&#61;# select enmoloop(array[1,4,5,6,7,8],1000);

enmoloop

----------

(1 row)

检查数据情况&#xff1a;

postgres&#61;# select * from enmo where id <10;

id | name

----&#43;------

(0 rows)

postgres&#61;# select * from enmo where id <2022;

id | name

------&#43;---------------------------------

2021 | DateStyle

2021 | acce_min_datasize_per_thread

2021 | allow_concurrent_tuple_update

2021 | archive_timeout

2021 | audit_dml_state

2021 | audit_grant_revoke

2021 | audit_space_limit

2021 | autoanalyze

2021 | autovacuum_io_limits

...

在 openGauss 和 Oracle 的上手实践中&#xff0c;对于 DBA 们事实上&#xff0c;是非常友好的。



推荐阅读
  • Summarize function is doing alignment without timezone ?
    Hi.Imtryingtogetsummarizefrom00:00otfirstdayofthismonthametric, ... [详细]
  • Python SQLAlchemy库的使用方法详解
    本文详细介绍了Python中使用SQLAlchemy库的方法。首先对SQLAlchemy进行了简介,包括其定义、适用的数据库类型等。然后讨论了SQLAlchemy提供的两种主要使用模式,即SQL表达式语言和ORM。针对不同的需求,给出了选择哪种模式的建议。最后,介绍了连接数据库的方法,包括创建SQLAlchemy引擎和执行SQL语句的接口。 ... [详细]
  • 本文介绍了Oracle存储过程的基本语法和写法示例,同时还介绍了已命名的系统异常的产生原因。 ... [详细]
  • 本文分析了Wince程序内存和存储内存的分布及作用。Wince内存包括系统内存、对象存储和程序内存,其中系统内存占用了一部分SDRAM,而剩下的30M为程序内存和存储内存。对象存储是嵌入式wince操作系统中的一个新概念,常用于消费电子设备中。此外,文章还介绍了主电源和后备电池在操作系统中的作用。 ... [详细]
  • 本文详细介绍了使用C#实现Word模版打印的方案。包括添加COM引用、新建Word操作类、开启Word进程、加载模版文件等步骤。通过该方案可以实现C#对Word文档的打印功能。 ... [详细]
  • PLSQL块:PLSQL块都用于解决特定问题,PLSQL块可以有参数,也可以相互调用。PLSQL块可以作为模式对象在Oracle数据库中保存,根据用途可以 ... [详细]
  • 这篇文章给大家介绍怎么从源码启动和编译IoTSharp ,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。IoTSharp项目是 ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 本文介绍了三种方法来实现在Win7系统中显示桌面的快捷方式,包括使用任务栏快速启动栏、运行命令和自己创建快捷方式的方法。具体操作步骤详细说明,并提供了保存图标的路径,方便以后使用。 ... [详细]
  • Spring常用注解(绝对经典),全靠这份Java知识点PDF大全
    本文介绍了Spring常用注解和注入bean的注解,包括@Bean、@Autowired、@Inject等,同时提供了一个Java知识点PDF大全的资源链接。其中详细介绍了ColorFactoryBean的使用,以及@Autowired和@Inject的区别和用法。此外,还提到了@Required属性的配置和使用。 ... [详细]
  • 本文介绍了在MFC下利用C++和MFC的特性动态创建窗口的方法,包括继承现有的MFC类并加以改造、插入工具栏和状态栏对象的声明等。同时还提到了窗口销毁的处理方法。本文详细介绍了实现方法并给出了相关注意事项。 ... [详细]
  • C语言的经典程序有哪些
    本篇内容介绍了“C语言的经典程序有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何 ... [详细]
  • 数据库技术:execute immediate
    首先在这里发发牢骚,指责下那些刻板的书写方式,不考虑读者理不理解,感觉就是给专业人员用来复习用的一样,没有前戏,直接就高潮,实在受不了!没基础或基础差的完全不知道发生了什么,一脸懵 ... [详细]
  • 1、PLSQLDeveloper记住登陆密码在使用PLSQLDeveloper时,为了工作方便希望PLSQLDeveloper记住登录Oracle的用户名和密码&#x ... [详细]
author-avatar
发出耀眼气息
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有