老虎刘在看到这个案例的时候,开始没有注意到执行计划里面显示的各表实际记录数,不认为plsql的改写方式比分析函数的写法更高效,还与陈老师有过几次邮件讨论,直到后来仔细查看了执行计划。...在本例中,如果t_customer表的记录数是10万,那么分析函数的写法反而要比plsql的写法快上几十到上百倍。 2、如果在程序代码中,一段sql要改成plsql,改动还是有点麻烦。...而分析函数的改写方式,则不论数据如何分布,都会比原SQL要高效,通用性更强。...对于本例改写前的SQL,应该还有很多开发人员和DBA在使用,在了解了分析函数的使用方法后,原SQL的低效写法就应该被彻底抛弃了。...最后的plsql改写成单SQL,逻辑看起来比较复杂难懂,一般不会用到这样的改写,大家了解一下就好了。 还是那句话,优化无定式,优化器是死的,人脑是活的,只有掌握了原理,才能让SQL执行效率越来越高。
命令处理的记录条数,默认为on即去掉最后的已经选择的行数 set verify off --可以关闭和打开提示确认信息 set heading off --关闭标题的输出设置为...可以在存储过程中调用utl_file,还可以通过程序进行调用,功能很强大,但是得了解它的用法,具体可参考《PL/SQL Packages and Types Reference》这个官方文档。...但是凡事都是两面的,简单易懂,自然有它的弊端,单就软件来说,封装了很多操作,例如常用的F5,查看执行计划,它执行的是explain,了解Oracle的朋友可能知道这种方式得到的执行计划可能不是真实的(具体可参考...和PLSQL Developer一些问题相关的历史文章, 《能不能算是PLSQL Developer的锅?》...《PLSQL Developer日期格式如何定制化》 通过PLSQL Developer是可以直接导出Excel格式的文件,但是适合于数据量较小的场景,数据量太大,容易卡顿,而且自定义的可控性不强,毕竟都是软件提供现成的功能
工作负载选项卡将列出所选Kubernetes集群的所有工作负载。 命名空间过滤器。左侧的“名称空间”过滤器可帮助您按您有权访问的名称空间快速进行过滤。所选名称空间上的所有工作负载将显示在右侧。...在主工作负载视图中,您将看到所有工作负载的列表以及有关其利用率(CPU和内存)的信息 查看特定工作负载 工作量状态。工作负载状态显示Kubernetes报告的工作负载的当前状态。 活动标签。...在主要配置详细信息中,您将找到工作负载的种类,与之关联的名称空间,其创建日期,工作负载附带的标签以及该工作负载当前正在使用的映像。 利用率。...对于CPU /内存利用率,Infra App通过查看Kubernetes指标终结点自动检测您是否已安装指标服务器。 pod。在pod选项中,您将能够看到所有相关pod的列表及其当前状态。 pod动作。...支持的资源利用率图表和趋势以及历史记录 终端访问节点和容器 优化性能以处理大型集群(已对运行25k pod的集群进行了测试) 全面支持Kubernetes RBAC
最近工作中,碰到了几个技术问题,记录于此。...问题1,PLSQL Developer中文显示问题 PLSQL Developer中写的SQL,例如列的别名包含了中文,就提示错误,如下所示, 很可能是系统不识别中文,认为是个非法的字符,所以提示这个错...问题3,PLSQL Developer登录报错ORA-12504 Oracle Client下载包解压缩,默认当前路径,没有tnsnames.ora,自己创建一个,增加数据库配置,但是登录PLSQL Developer...问题4,Windows 10的PLSQL Developer字体显示很小 如下图所示,PLSQL Developer字体显示很小, PLSQL Developer图标右键“属性”,选择“更改高DPI设置...,让我们更加了解CBO的选择。
PLSQL Developer可以说是个让人又爱又憎的工具,“爱”是他的确提供了操作Oracle数据库非常丰富、方便的功能,“憎”是他的一些隐藏配置很可能是个“坑”,就像《PLSQL Developer...其他历史文章, 《PLSQL Developer中文乱码问题》 《PLSQL Developer免密登录》 今天朋友碰巧问了个问题,PLSQL Developer的Preferences首选项中这个“AutoCommit...直译过来,就是这个选项控制通过结果集表格提交的记录是否自动提交事务。好像还是很晦涩,通过实验,能更直观理解。...重点来了,如果勾选了“AutoCommit posted records”,此时刚才编辑的数据,会自动提交,工具栏中commit和rollback的按钮是灰的, ?...可以看出,PLSQL Developer软件功能设计的还是很精妙的,但还是开始说的,我们得了解清楚所作操作的影响,不能当做纯黑盒,才可能避免入“坑”,让工具成为我们放心的助手。
如果想要记录访问过数据库的用户 IP 地址,常规方式是无法做到的,但是可以通过一些非常规方式来实现。...一、介绍 这里提供几种方式: 通过触发器实现 查看监听日志 通过 PLSQL 包 DBMS_SESSION 二、实战演示 1、触发器实现 创建单独表空间存放记录: create tablespace test...userenv('sessionid'); end; / 本机通过 lucifer 用户登录: sqlplus lucifer/lucifer@10.211.55.110/orcl 查询 非 SYS 用户的登录记录...3、PLSQL包 DBMS_SESSION 为方便后面测试,先删除第一种方式创建的触发器和表空间: drop trigger on_logon_trigger; drop tablespace test...通过以上几种方式,我们可以跟踪记录到登录用户的IP地址。
如果想要记录访问过数据库的用户IP地址,常规方式是无法做到的,但是可以通过一些非常规方式来实现。 ?...实现 这里提供几种方式: 通过触发器实现 查看监听日志 通过PLSQL包 DBMS_SESSION 1 触发器实现 创建单独表空间存放记录 sqlplus / as sysdba create tablespace...3 PLSQL包 DBMS_SESSION 为方便后面测试,先删除第一种方式创建的 触发器和表空间 sqlplus / as sysdba drop trigger on_logon_trigger;...从上述实验可以看出,客户端已经可以查询IP地址,说明plsql包但生效,但是不会记录到v$session中,需要创建一个触发器来实现。...可以看到,IP地址已经被记录了。 通过以上几种方式,我们可以跟踪记录到登录用户的IP地址。至于有什么作用,自己脑补吧。
前言 Oracle中集合类型覆盖了Postgresql数组的功能,在Oracle用户中时非常常用的。...PG的数组。...->plsql_cxt.curr_compile_context->plpgsql_Datums 注意变量列表是一套plpgsql_Datums 命名空间区别: openGauss PostgreSQL...命名空间区别 u_sess->plsql_cxt.curr_compile_context->ns_top ns_top 命名空间结构体区别 int itemtype; PLpgSQL_nsitem_type...三层嵌套表类型,var会创建nest_table变量→nest_table变量,两层变量记录内层数组类型,参考下图中变量"ve"。
最近工作中,碰到了几个技术问题,记录于此。 问题1,PLSQL Developer中文显示问题 PLSQL Developer中写的SQL,例如列的别名包含了中文,就提示错误,如下所示, ?...很可能是系统不识别中文,认为是个非法的字符,所以提示这个错。 在系统环境变量增加, NLS_LANG=SIMPLIFIED_CHINESE_CHINA.ZHS16GBK ? 重启PLSQL。...问题3,PLSQL Developer登录报错ORA-12504 Oracle Client下载包解压缩,默认当前路径,没有tnsnames.ora,自己创建一个,增加数据库配置,但是登录PLSQL Developer...问题4,Windows 10的PLSQL Developer字体显示很小 如下图所示,PLSQL Developer字体显示很小, ?...,让我们更加了解CBO的选择。
PLSQL介绍 PLSQL是Oracle对SQL99的一种扩展,基本每一种数据库都会对SQL进行扩展,Oracle对SQL的扩展就叫做PLSQL… SQL99是什么 (1)是操作所有关系型数据库的规则...(2)是第四代语言 (3)是一种结构化查询语言 (4)只需发出合法合理的命令,就有对应的结果显示 SQL的特点 (1)交互性强,非过程化 (2)数据库操纵能力强,只需发送命令,无需关注如何实现 (3)多表操作时...程序中:;号表示每条语句的结束,/表示整个PLSQL程序结束 PLSQL与SQL执行有什么不同: (1)SQL是单条执行的 (2)PLSQL是整体执行的,不能单条执行,整个PLSQL结束用/,其中每条语句结束用...;号 ---- PLSQL变量 既然PLSQL是注重过程的,那么写过程的程序就肯定有基本的语法,首先我们来介绍PLSQL的变量 PLSQL的变量有4种 number varchar2 与列名类型相同 与整个表的列类型相同...IS SELECT 语句; 使用无参光标cursor,查询所有员工的姓名和工资【如果需要遍历多条记录时,使用光标cursor,无记录找到使用cemp%notfound】 declare -
表中id为3的记录的name字段已经改变。...id = 1; commit; i := i + 1; exit myloop when i >10; end loop; END; 执行结果是:ID为1的记录的...= i where id = 1; commit; i := i + 1; end loop; END; 执行结果是:ID为1的记录的name字段值为4。...* from product) LOOP v_id = rec.id; v_price = rec.price; END LOOP; END; 八、异常处理 定义当DML语句发生异常时,如何处理...一般情况下,我们可以在存储过程的异常处理模块中将出错的信息保存到特定的系统表中,这样我们就可以根据日志记录得知执行的错误。
虽然工具方便了,但是屏蔽了细节,一旦不了解,进入盲区,就可能适得其反,产生其他影响。...之所以DML语句需要显示提交,从原理层讲,DML会记录redo和undo信息,undo中存储的是修改数据的前镜像,当执行rollback时,可以利用undo数据进行恢复,当执行commit时,Oracle...他的意思是说,当你正常退出PLSQL Developer,如果窗口中,存在尚未提交的事务,Logoff with open transaction=Commit,PLSQL Developer就会帮你自动提交了...166xk1FXMB2g8JxBVF5T4Aw1Z5aZ6vSE (大小写一致) 之后把你的Oracle SID邮寄地址 sqlrush@mail.com我们将让你知道如何解锁你的数据库 Hi buddy...$ORACLE_HOME/rdbms/admin/dbmsbkrs.sql定义了dbms_backup_restore,存储过程resetCfileSection负责清空控制文件指定记录, PROCEDURE
DTCC大会上,阿里江疑的演讲中提到一个:select from update hot row; 不明白如何在Oracle中实现的,他的意思是在一条SQL中实现update和select这条update...经dbsnake指点,了解到这是模仿了Oracle的returning into子句,可以将使用的DML语句影响的行记录的指定列的值select出来。...上面例子对于不熟悉PLSQL的不是很好理解,用一个简单的示例说明: 1....总结: 使用returning into子句可以在一条SQL中将insert、update和delete影响的行记录指定字段信息select出来,其中insert和update都是执行之后的结果,delete...当然,其实这里用的是PLSQL的语法实现。
今天快下班时,兄弟团队过来问了个问题,一张表中的DATE类型字段在PLSQL-Developer中检索的时候,出现这种现象,如下所示,有记录存储的是"2019-01-01",即不带时间,有记录存储的是"...2019-01-01 23:59:59",即带了时间,如果想找出所有这种不带时间的记录,并对其进行更新,应该如何操作?...此时在PLSQL Developer中检索,能看到区别, ? 使用to_char转换,可以看到,第一条记录,其实时间是00:00:00, ?...下个问题,就是如何找到,这些所谓不带时间的记录,一开始是想通过extract函数,提取出“时分秒”,让其分别等于0,作为条件检索, ?...这个问题不复杂,但你要明白DATE数据类型的实际存储,进而找到如何检索记录的线路,另外,像extract这种的函数,Oracle中还有很多,一些不常用的,并不需要背下来,当需要的时候,你能找到语法,知道如何使用
大家好,又见面了,我是你们的朋友全栈君。 不少小伙伴对PLSQL的应用还不是很了解,大家不必担心,在PLSQL使用视频教程中会告诉大家如何使用PLSQL。...进入PLSQL后切换数据库连接: PLSQL中编写SQL语句并执行 注意:选中要执行的语句,再执行,否则将执行所有SQL语句。...执行快捷键为:F8 有的老版本执行语句的按钮是这个样子: PLSQL中查看数据库表结构 在如下界面,按住Ctrl键并将鼠标移动到一个表名,此时表名变了颜色并出现下划线: 点击表名,便可显示表结构,...插入行 在SELECT语句后加FOR UPDATE,执行后,点击 ,然后点击 ,插入一空行;较新的版本插入一行的图标如下图: 删除行 在SELECT语句后加FOR UPDATE,执行后,点击 ,...导入表格数据 直接在Excel表中复制行,粘贴到PLSQL的查询结果区即可。
今天这个案例不看SQL,看优化前后的执行计划就可以了: 优化前,最终返回3096条记录,耗时4146秒(执行时间看第一行中间的timeline): 优化后,最终返回185K记录,耗时653秒:...优化后SQL执行计划没有变化,耗时最多步骤返回的记录数多了,最终返回的记录数也是优化前的6倍多,执行时间却变成了优化前的1/6,到底做了什么优化操作?...欲知后事如何,且听下回分解,给大家留一个思考的时间! 有思路的朋友可以留言讨论。...SQL出现性能问题的文章,在分析SQL执行计划时使用的是plsql developer工具。...其实plsql developer工具作为plsql 开发调试工具来说是非常不错的,但是作为查看执行计划的工具,显示的信息就差很多,补充信息无法显示,用它查看执行计划的唯一的好处就是各执行步骤层次感比较清晰
变换过程是针对某一要素类内的所有要素统一执行的,通常用于将以数字化仪单位创建的数据转换成地图上所表示的实际单位。 本练习将向您展示如何基于自己创建的位移链接来应用变换。...在准备将已数字化或已导入到临时要素类中的数据复制粘贴到自己的数据库中时,您可能需要使用此方法对这些数据进行校正。您还将了解如何指定要校正的要素、预览校正和查看链接表。 空间校正以位移链接为基础。...应用变换 空间校正可用于校正图层中的所选要素集或所有要素。此参数设置位于“选择要校正的输入”对话框中。默认为校正所选要素集。 步骤: 1.您需要选择是校正所选要素集还是图层中的所有要素。...2.单击空间校正 工具条上的查看连接表 ? 。连接表提供了有关连接坐标、连接 ID 和 RMS 误差的信息。右键单击某一链接记录打开快捷菜单。...在本练习中,您了解到如何设置要校正的数据、创建位移连接、预览校正以及校正数据。
关于ORA-06502的描述: ? 描述的是PLSQL块中,因为实际值超过了变量定义的长度,所以报了这个错。 如果使用错误的密码sqlreviewea,报错: ?...方法1:GC中triggers视图查找Event是LOGON的记录 这里可以看见有一个trigger名称是LOG_DEFERRED的触发器: ? 方法2: ?...这才想起来,为了解决一个用户权限的问题(http://blog.csdn.net/bisal/article/details/51697853),上次特意为这个库增加了一个logon trigger,判断登录的若是某个特定用户.../sqlreviewer报一个PLSQL错误的原因了。...查看alert.log日志,确实有这个错误的记录: ?
各种管理表、索引、表空间、 redo等都可以在这里找到(在线传输表空间也在此文档中有描述) Performance tuning guide ,里面包含优化相关的内容,介绍了优化的方法、数据库实例以及...如果有不了解的包可以在这里找到,比如说常用的关于 dbms_stats包的信息,包里面函数以及存储过程的作用、参数的说明、使用的范例就可以在这文档中找到。...PL/SQL Language Reference ,这个文档中说了 plsql编程的基础概念、语法等东西。如果想要学习 plsql编程,可以从这个文档看起。...具体还没深入了解,但是感觉还是比较先进好用的,当 plsql没有办法完成任务的时候,可以使用 java存储过程来解决,比如说想要获取主机目录下的文件列表。...SQLJ提供了plsql 和java集成的简便方法。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 开发工具与关键技术:PLSQL...~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 工具 oracle数据库、PLSQL...Developer 并PLSQL Developer已经连接到oracle数据库 方法/步骤 1、首先登录PL/SQL developer, 点击工具栏中的第一个图标,选择“表”。...=某值(update student set studentname = ‘星星’ where guid = ‘0004’)删除数据:delete from 表名称 where 列名称 = 值了解更多进入...本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
领取专属 10元无门槛券
手把手带您无忧上云