Oracle
文章平均质量分 72
Oracle 学习之路
鱼丸丶粗面
吾所成之事,不可逆也。
展开
-
PLSQL 显示行号(隔条)
文章目录1 当前页面显示2 所有页面显示3 快速跳转至指定行号1 当前页面显示右键(SQL编辑区域) → 隔条2 所有页面显示工具 → 首选项 → SQL窗口 → 显示隔条(行号)3 快速跳转至指定行号快捷键:Ctrl + G(忽略大小写)原创 2024-09-21 12:14:14 · 204 阅读 · 0 评论 -
PLSQL 无客户端连接服务器设置
PLSQL 无客户端连接服务器设置原创 2024-08-06 18:02:29 · 444 阅读 · 0 评论 -
操作系统基础:进程管理(PV 操作)
操作系统基础:进程管理(PV 操作)原创 2024-05-15 23:36:22 · 569 阅读 · 1 评论 -
数据结构与算法:二叉树
数据结构与算法:二叉树原创 2024-05-06 17:36:47 · 874 阅读 · 0 评论 -
关系数据库设计基础理论:函数依赖、Armstrong公理、最小函数依赖集
关系数据库设计基础理论:函数依赖、Armstrong公理、最小函数依赖集原创 2024-04-26 16:38:18 · 1355 阅读 · 0 评论 -
数据库关系模式分解 - 无损连接和保持函数依赖性
数据库关系模式分解 - 无损连接和保持函数依赖性原创 2024-04-24 17:39:35 · 2875 阅读 · 0 评论 -
plsql select into 赋值异常问题详解
文章目录问题1:报错:未找到任何数据原因分析解决办法问题2:数据同步前后数据不匹配原因分析解决办法问题1:报错:未找到任何数据错误截图:基础数据准备:declare v_dname scott.dept.dname%type;begin SELECT t.dname into v_dname from dept t where t.deptno = 50; -- 不存在 deptno=50 的记录 dbms_output.put_line(v_dna原创 2019-01-20 11:27:46 · 2799 阅读 · 3 评论 -
plsql 查询数据库操作历史记录(Ctrl + e)
plsq 查询数据库操作历史记录(快捷键:Ctrl + e)原创 2022-08-09 09:55:45 · 8010 阅读 · 0 评论 -
Oracle 错误日志表及异常处理包详解【源码】
文章目录1 概述2 效果演示3 源码3.1 错误日志表3.2 异常处理包3.3 测试程序1 概述1. 目的:'快速定位程序异常'2. 包处理的核心思想:'自治事务' -- 自治事务的 "提交、回滚" 与 主事务 之间互不影响3. 错误异常记录逻辑大体一致,此处记录,方便需要使用时复制、粘贴4. 验证思路:通过执行报错的过程,观察 '程序执行结果' 和 '日志表' 数据插入情况2 效果演示程序执行截图:日志表查询截图:3 源码说明:1. 测试中,共有 2 个用户 -- 模拟实原创 2020-12-17 23:45:08 · 664 阅读 · 0 评论 -
plsql 按年取数、按月取数详解
文章目录1 概述2 源码1 概述使用场景: 当一段 sql 查询时间太长时,可以 分时间段 进行查询,如:按年查询、按月查询等2 源码-- *****************************************-- 功能:按年取数(或 按月取数)-- 说明:若想 "按月取数": add_months(v_start_date, 1)-- *****************************************DECLARE v_start_date DATE :原创 2020-09-18 14:34:46 · 3102 阅读 · 0 评论 -
Oracle 管道函数详解(pipelined)
文章目录1 概述2 实例2.1 首先创建一个表类型2.2 实时返回数据3 其它实例1 概述管道函数为 并行执行,在普通函数中使用 dbms_output 输出的信息,需要等服务器执行完整个函数后一次性返回给客户端。如果需要在客户端 实时 输出函数执行过程中的一些信息,在 Oracle9i 以后,可以使用管道函数(大数据处理时,性能提升)。关键字 pipelined 表明这是一个 oracle 管道函数,其返回值类型必须为 集合,在函数中,pipe row 语法被用来返回该集合的 单个元素,函数以一个原创 2020-07-17 08:22:46 · 4642 阅读 · 0 评论 -
plsql 代码自动替换详解
文章目录1 概述2 图示1 概述1. 目的:'提高码字效率' (1) 比如:输入 sf + '空格' 直接显示 select * from (2) 前提:配置了 sf = select * from 2. 我的习惯,仅供参考: -- 按首字母顺序排列,方便查找 cor = create or replace df = delete from sf = select * from scf = select count(1) from srf = sel原创 2020-01-16 07:48:41 · 2595 阅读 · 0 评论 -
plsql bulk collect 详解
文章目录1 概述1.1 图示2 三种使用方式2.1 在 select into 中2.2 在 fetch into 中2.3 在 returning into 中3 扩展:forall + bulk collect 综合运用1 概述1. 作用:提高 'sql 引擎' 将 sql 语句执行情况返回给 'pl/sql 引擎' 的效率 (1) bulk collect 会 '一次性' 将结果集绑定到一个 '集合变量' 中, 并从 sql 引擎发送到 pl/sql 引擎,大大减少 "上下文切原创 2020-05-12 08:17:29 · 2255 阅读 · 0 评论 -
plsql binary_integer、pls_integer、simple_integer 区别详解
文章目录1 概述2 相同点2.1 整数类型,四舍五入2.2 数据精度一致3 不同点3.1 执行效率3.2 运算时,精度溢出,存疑1 概述1. 结论:三者都是 '整数类型',但使用场景不用2. 使用优先级: simple_integer > pls_integer > binary_integer (1) 如果没有 '数据溢出',也不支持 null,优先使用 simple_integer (2) 如果没有 '数据溢出',支持 null,推荐使用 pls_integer (原创 2020-05-18 08:17:07 · 2139 阅读 · 0 评论 -
plsql 循环详解(for、while、loop、continue、exit、return)
文章目录1 概述2 循环的三种方式2.1 for 循环2.2 while 循环2.3 loop 循环3 退出循环的三种方式3.1 continue3.2 exit3.3 return1 概述1. 循环的三种方式 (1) for : 常用,'起始范围' (2) while : '起始范围' 其中之一 (3) loop : '先执行一条语句',再判断是否满足循环条件2. 退出循环的三种方式 (1) continue: 退出 '本次循环',直接进入下一循环原创 2018-07-30 00:03:17 · 7577 阅读 · 1 评论 -
plsql 批量执行多个sql文件
文章目录场景@ 命令java 文件流场景通常情况下,不同类型的 sql 文件存放在不同的文件夹下,比如(DDL / DML / PKG)Ctrl + c 和 Ctrl + v 一个文件一个文件去执行,过于麻烦@ 命令@命令只能执行单个 sql 文件,不能执行文件夹可将多个 sql 文件的 @命令放在一个 sql 文件中,再一次执行全部SQL> @ C:\Users\wangyou\Desktop\文件夹Error reading fileSQL>SQL> @ C原创 2020-05-15 16:26:42 · 1905 阅读 · 0 评论 -
plsql %type、%rowtype、record 详解
文章目录1 概述2 示例3 扩展3.1 varry、table 数组类型1 概述1. %type、%rowtype、record 的意思及作用? (1) 均指 '引用' 数据类型 (2) 声明的类型 '自动引用' 表字段的类型 -- 原来:varchar2(30) name 改成 varchar2(50) ,则需 重新声明数据类型 -- 现在:name%type name 无论怎么改,都不需 重新声明数据类型 2. %type、%rowtype、rec原创 2019-08-30 10:48:00 · 9413 阅读 · 4 评论 -
plsql execute immediate 详解
文章目录1 概述2 示例1 概述1. 作用:在 pl/sql 中执行 '立即执行 sql 语句' (1) 比如:咱常常在 Oracle 语法中可以直接执行 update、insert、delete 操作 但,在 pl/sql 语法中,是 '不能直接' 同在 Oracle 这样操作的 (2) 为了解决此类问题,引入了 execute immediate(立即执行)2. 以下效果等同 (1) Oracle 语法:update table_name set co原创 2018-08-12 21:23:01 · 4430 阅读 · 0 评论 -
plsql 常见数据类型
文章目录1 思维导图2 扩展2.1 plsql %type、%rowtype、record 详解2.2 plsql 集合类型详解(varray、table)1 思维导图2 扩展2.1 plsql %type、%rowtype、record 详解plsql %type、%rowtype、record 详解2.2 plsql 集合类型详解(varray、table)plsql 集合类型详解(varray、table)...原创 2021-12-16 20:42:43 · 1323 阅读 · 0 评论 -
PLSQL 拆分字符串为数组
文章目录效果展示:首先定义类型:CREATE TYPE scott.ty_object_map IS OBJECT( v_key NUMBER, v_value VARCHAR2(100));/ CREATE TYPE scott.ty_table_map IS TABLE OF scott.ty_object_map;/-- 删除type、若需要DROP TYPE scott.ty_table_map;DROP TYPE scott.ty_object_map原创 2020-07-20 07:09:01 · 1320 阅读 · 0 评论 -
Oracle 执行计划详解(预估 + 真实)
文章目录1 概述1.1 思维导图1.2 概念2 执行计划2.1 预估的2.2 真实的3 示例4 备选命令1 概述什么是 Oracle 的执行计划?执行计划是一条查询语句在 Oracle 中的执行过程或访问路径的描述简单一点说,就是: Oracle 是如何执行 sql 语句的。比如说,就像咱去一个地方,事先会计划好怎么坐车一样。先坐公交车到哪儿再坐地铁,oracle 的执行计划也是如此,就是一步一步地执行 sql。oracle 的执行计划是很复杂的,一般我们看到的执行计划都是 oracle原创 2020-05-19 16:43:35 · 20391 阅读 · 0 评论 -
Oracle 序列表及获取序列详解【源码】
文章目录1 概述2 效果演示3 源码3.1 创建序列3.2 序列配置表3.3 package1 概述1. 目的:"方便使用时复制、粘贴" (1) Oracle 获取 '序列(sequence)' 的底层代码基本上一样 (2) 本文在此记录,方便以后复制、粘贴2. 思路:-- 步骤 (1) 创建序列 (2) 创建序列配置信息表 -- 为了获取 "序列名" (3) 获取序列,通过方法或过程3. 获取序列的核心 select [v_sequence_name].ne原创 2020-03-06 11:53:06 · 1926 阅读 · 0 评论 -
plsql 字符串转成数组(互换)
文章目录1 概述2 核心代码3 完整代码3.1 测试代码3.2 源代码1 概述 - 能够完成该功能的代码有很多,以下为我认为 '最简写、优雅' 的写法 - 核心思想:regexp_substr('abc1,cbd2,db3,db5', '[^,]+', 1, rownum)2 核心代码--****************************************************************-- regexp_substr(string, pattern, positi原创 2020-12-15 21:01:33 · 2472 阅读 · 0 评论 -
plsql 代码加密详解(wrap)
文章目录1 概述2 加密3 附件1 概述1. 什么叫加密? (1) 加密技术:二进制文件的混淆技术('obfuscation') (2) 加密理解:隐藏 pl/sql 关键代码 2. 加密的优点 3. 2 加密语法:-- 在装 Oracle 的机器上用命令行输入wrap iname = 原文件 [oname = 目标文件]> wrap iname = d:\test.sql oname = d:\new_test.sql;3 附件包头,路径:D:\加密原创 2020-11-09 20:24:11 · 1509 阅读 · 0 评论 -
plsql 集合类型详解(varray、table)
文章目录1 概述2 集合2.1 varray 单行多列 限定长度2.2 关联数组 单行多列 index by2.3 嵌套表 多行多列3 常见问题3.1 delete 和 置 null 的区别3.2 ORA-01403:未找到任何数据3.3 数组属性和函数1 概述1. 集合:具有相同定义的元素的聚合,有以下三种 (1) varray: 指定最大长度 -- varray(3) of varchar2(30); (2) 关联数组: index by -- table of varchar2(30)原创 2020-12-18 22:33:33 · 3967 阅读 · 0 评论 -
Oracle 表连接详解(left join、left outer join)
Oracle 表连接详解(left join、left outer join)原创 2022-09-22 16:07:43 · 3854 阅读 · 3 评论 -
Oracle 字符集与编码详解
Oracle 字符集与编码详解原创 2022-09-13 15:39:37 · 1204 阅读 · 0 评论 -
Oracle 平均数详解(avg)
平均数 avg原创 2022-08-24 10:24:15 · 7116 阅读 · 0 评论 -
Oracle 密码策略详解
Oracle 密码策略详解 dba_profiles原创 2022-08-01 15:01:04 · 5385 阅读 · 0 评论 -
Oracle 注释详解(--、/**/、rem)
Oracle 的三种注释: --、/**/、rem原创 2022-07-29 15:45:04 · 4055 阅读 · 0 评论 -
Oracle count(1)、count(*)、count(列) 区别详解
文章目录1 结论2 示例1 结论#mermaid-svg-NMfC4QkxDOYyhJed {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-NMfC4QkxDOYyhJed .error-icon{fill:#552222;}#mermaid-svg-NMfC4QkxDOYyhJed .error-text{fill:#552222;stroke:#552222;}#m原创 2022-03-23 15:30:41 · 2158 阅读 · 0 评论 -
Oracle null 有哪些注意事项【面试题】
文章目录1 概述2 示例2.1 运算2.2 判断2.3 统计2.4 子查询2.5 连接2.6 排序1 概述null:空值,未指定的、未知的 或 不可预知的值。#mermaid-svg-Y9Dm5CplchyUVYpO {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-Y9Dm5CplchyUVYpO .error-icon{fill:#552222;}#mermai原创 2022-03-11 11:29:28 · 1051 阅读 · 0 评论 -
Oracle 分区索引详解(local、global)
文章目录1 概述2 分区索引2.1 本地分区索引2.2 全局分区索引2.3 索引查询3 扩展3.1 表分区1 概述#mermaid-svg-lh9r9zlpZiFd5v0i {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-lh9r9zlpZiFd5v0i .error-icon{fill:#552222;}#mermaid-svg-lh9r9zlpZiFd5v0i .e原创 2022-03-11 10:31:52 · 7894 阅读 · 0 评论 -
Oracle 体系结构之存储结构详解(逻辑 + 物理)
文章目录1 概述2 逻辑存储结构2.1 表空间 tablespace2.2 段 segment2.3 区 extend2.4 数据块 block3 物理存储结构1 概述说明:1. 逻辑结构 (1) 对应关系:'一对多' (2) 大小关系: 表空间 TableSpace > 段 Segment > 区 Extent > 数据块 Block 2. 物理结构 (1) '数据文件': '系统和用户数据',默认以 'DBF' 为扩展原创 2021-01-21 17:06:56 · 3153 阅读 · 0 评论 -
Oracle 取多列中最大值 greatest、最小值详解 least
文章目录1 概述2 示例3 扩展3.1 获取非空列值3.2 隐式类型转换1 概述#mermaid-svg-QJYqikngPmYUmVU4 .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-QJYqikngPmYUmVU4 .label text{fill:#333}#mermaid-svg-QJYqikngP原创 2019-10-11 13:53:59 · 3623 阅读 · 0 评论 -
Oracle 日历表详解(含节假日)
文章目录1 概述2 示例2.1 判断双休日2.2 判断节假日1 概述#mermaid-svg-RiNPbI034v08DBcc .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-RiNPbI034v08DBcc .label text{fill:#333}#mermaid-svg-RiNPbI034v08DBc原创 2022-01-07 11:46:44 · 6129 阅读 · 1 评论 -
Oracle sql 优化详解
文章目录1 概述2 性能优化2.1 优化准则2.2 执行计划2.3 sql 执行顺序3 优化策略3.1 减少通配符 * 的使用3.2 避免不走索引3.3 减少对表的查询1 概述1. 包括但不限于以下情况2. 持续补充...2 性能优化2.1 优化准则 准则 措施 减少磁盘访问 减少数据的访问(合理利用索引) 仅返回需要的字段 减少网络传输 批量处理数据,减少网络 io 减少开销 cpu 开销:减少排序、全表查询等原创 2021-12-21 15:52:18 · 467 阅读 · 0 评论 -
Oracle 随机函数详解(dbms_random)
文章目录1 概述2 dbms_random2.1 value(low, high):半闭半开区间2.2 string(opr, len)2.3 random:已过时3 扩展3.1 Oracle 保留两位小数详解1 概述1. 随机函数包(package) (1) sys.dbms_random -- 系统包2. 常用方法 (1) value(low, hign):随机 '整数' (2) string(opr, len):随机 '字符串'2 dbms_random2.1 val原创 2021-12-16 16:26:23 · 8803 阅读 · 0 评论 -
Oracle 保留两位小数详解
文章目录1 概述2 示例1 概述#mermaid-svg-LiK7qdn2UTmJIUjS .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-LiK7qdn2UTmJIUjS .label text{fill:#333}#mermaid-svg-LiK7qdn2UTmJIUjS .node rect,#merm原创 2021-12-16 10:36:35 · 6962 阅读 · 0 评论 -
Oracle sql 语句执行顺序【面试题】
文章目录1 概述2 执行顺序3 整体:从内到外,从下到上,从右到左1 概述1. 面试题:sql 是从 select 开始执行的吗? 答:不是。是从 from 开始。2 执行顺序-- 查询处理的步骤:按序号。一步步筛选,直至满足所有条件(7) select (8) distinct .. -- (10) top mysql(1) from .. -- sql 入口(3) join .. (2) on ..(4) where ..(5) group by ..(6原创 2021-12-13 16:11:02 · 762 阅读 · 0 评论