当前位置: 首页 > news >正文

PL/SQL 性能优化指南

PL/SQL 性能优化指南

本文系统梳理了在SQL编写和PL/SQL程序设计中常见的性能问题,并提供可落地的优化策略,帮助开发者写出更高效、更稳定的数据库代码。


一、表连接与解析顺序优化

1. 选择最优的表名顺序(适用于RBO,现代已不敏感但建议保留习惯)

Oracle在基于规则的优化器(RBO)中按从右到左解析 FROM 子句,最后一个表为"驱动表"先被处理。应将记录最少的表放在最后以减少中间结果集。

⚠️ 注意:当前Oracle普遍使用CBO(成本优化器),此规则不再生效,但仍建议保持良好编程习惯。

✅ 推荐写法(小表驱动)

Sql
深色版本
-- 假设 ab01 只有1条记录,ac01 有16,384条
SELECT COUNT(*) FROM ab01, ac01;  -- 高效:ab01 作为驱动表

❌ 低效写法

Sql
深色版本
SELECT COUNT(*) FROM ac01, ab01;  -- 低效:ac01 先扫描,执行时间显著增加

2. WHERE子句中的连接顺序(自下而上解析)

Oracle解析 WHERE 子句是自下而上的,因此应将表连接条件写在其他过滤条件之前,以便尽早完成关联,减少中间结果集。

✅ 推荐写法

Sql
深色版本
SELECT ab01.aab001, ab02.aab051
FROM ab01, ab02
WHERE ab01.aab001 = ab02.aab001  -- 先执行连接,减少数据量AND ab02.aae140 = '31';         -- 再应用过滤条件

❌ 低效写法

Sql
深色版本
SELECT ab01.aab001, ab02.aab051
FROM ab01, ab02
WHERE ab02.aae140 = '31'          -- 先过滤可能导致全表扫描AND ab01.aab001 = ab02.aab001;  -- 后连接,效率低

二、子查询与集合操作优化

3. 避免使用 SELECT *

使用 SELECT * 会触发数据字典查询,将 * 展开为所有列名,增加解析时间与I/O开销。

✅ 推荐写法

Sql
深色版本
-- 明确列出所需字段,减少数据传输
SELECT aac001, aac002, aab001 
FROM ac01 
WHERE aab001 = '1001';

❌ 低效写法

Sql
深色版本
-- 不必要的列加载
SELECT * FROM ac01 WHERE aab001 = '1001';

4. 使用 EXISTS 替代 IN(尤其适用于子查询)

EXISTS 在找到第一个匹配项后即返回,而 IN 需构建完整结果集,效率较低。

✅ 推荐写法

Sql
深色版本
SELECT *
FROM ac01
WHERE EXISTS (SELECT 1 FROM ac02WHERE ac02.aac001 = ac01.aac001AND aab001 = str_aab001AND aae140 = '31'
);

❌ 低效写法

Sql
深色版本
SELECT *
FROM ac01
WHERE aac001 IN (SELECT aac001 FROM ac02WHERE aab001 = str_aab001 AND aae140 = '31'
);

5. 使用 NOT EXISTS 替代 NOT IN

NOT IN 在子查询含 NULL 时结果为空,且需全表扫描,效率极低。

✅ 推荐写法

Sql
深色版本
SELECT *
FROM ac01
WHERE NOT EXISTS (SELECT 1 FROM ab01WHERE ab01.aab001 = ac01.aab001AND aab020 = '100'
);

❌ 低效写法

Sql
深色版本
SELECT * FROM ac01
WHERE aab001 NOT IN (SELECT aab001 FROM ab01 WHERE aab020 = '100'
);

三、集合操作与条件过滤优化

6. 尽量使用 UNION ALL 替代 UNION

UNION 会去重并排序,消耗大量资源;UNION ALL 直接合并,效率更高。

✅ 推荐写法

Sql
深色版本
SELECT col FROM tab1
UNION ALL
SELECT col FROM tab2;

❌ 低效写法

Sql
深色版本
SELECT col FROM tab1
UNION
SELECT col FROM tab2;

7. 使用 DECODE 函数减少处理时间

DECODE 在一次扫描中完成多条件统计,避免重复查询。

✅ 推荐写法

Sql
深色版本
SELECT COUNT(DECODE(aac008, '1', '1', NULL)) AS zz,COUNT(DECODE(aac008, '2', '1', NULL)) AS tx
FROM ac01
WHERE aab001 = '100001';

❌ 低效写法

Sql
深色版本
SELECT COUNT(1) FROM ac01 WHERE aab001='100001' AND aac008='1';
SELECT COUNT(1) FROM ac01 WHERE aab001='100001' AND aac008='2';

8. 用 WHERE 替代 HAVING

HAVING 在分组后过滤,WHERE 在分组前过滤,能显著减少数据量。

✅ 推荐写法

Sql
深色版本
SELECT aac008, COUNT(*)
FROM ac01
WHERE aac008 IN ('1', '2')  -- 分组前过滤
GROUP BY aac008;

❌ 低效写法

Sql
深色版本
SELECT aac008, COUNT(*)
FROM ac01
GROUP BY aac008
HAVING aac008 IN ('1', '2'); -- 分组后才过滤

四、PL/SQL 程序结构优化

9. 减少对表的重复查询

合并相似查询,一次读取,分逻辑处理,减少I/O。

✅ 推荐写法

Sql
深色版本
CURSOR cur_kc24 ISSELECT akc260, aka130FROM kc24WHERE akb020 = str_akb020AND aka130 IN ('11', '21');FOR rec IN cur_kc24 LOOPIF rec.aka130 = '11' THEN-- 门诊处理ELSIF rec.aka130 = '21' THEN-- 住院处理END IF;
END LOOP;

❌ 低效写法

Sql
深色版本
-- 执行两次查询
FOR rec_mz IN (SELECT akc260 FROM kc24 WHERE aka130='11') LOOP ... END LOOP;
FOR rec_zy IN (SELECT akc260 FROM kc24 WHERE aka130='21') LOOP ... END LOOP;

10. 避免游标中嵌套查询(N+1问题)

游标中嵌查询会导致N次数据库往返,性能灾难。

✅ 推荐写法

Sql
深色版本
CURSOR cur_ac04 ISSELECT ac04.aac001, ac04.akc010, ac01.aac008FROM ac04, ac01WHERE ac04.aac001 = ac01.aac001AND ac04.aab001 = prm_aab001;FOR rec_ac04 IN cur_ac04 LOOPIF rec_ac04.aac008 = '1' THENn_jfje := rec_ac04.akc010 * 0.08;END IF;
END LOOP;

❌ 低效写法

Sql
深色版本
FOR rec_ac04 IN (SELECT aac001, akc010 FROM ac04) LOOPSELECT aac008 INTO str_aac008 FROM ac01 WHERE aac001 = rec_ac04.aac001;-- 循环内查询,100万次 = 数小时
END LOOP;

11. 使用批量绑定(BULK COLLECT + FORALL)

减少上下文切换,提升大批量DML性能。

✅ 推荐写法

Sql
深色版本
DECLARETYPE t_ac04 IS TABLE OF ac04%ROWTYPE;l_data t_ac04;
BEGINSELECT * BULK COLLECT INTO l_data FROM ac04 WHERE aab001 = '1001';FORALL i IN 1..l_data.COUNTINSERT INTO ac04_bak VALUES l_data(i);COMMIT;
END;

❌ 低效写法

Sql
深色版本
FOR rec IN (SELECT * FROM ac04) LOOPINSERT INTO ac04_bak VALUES rec; -- 逐行插入,性能差
END LOOP;

五、事务控制与辅助技巧

12. 合理控制 COMMIT 频率

平衡资源释放与提交开销。

✅ 推荐策略

Sql
深色版本
n_count := 0;
FOR rec IN cur_data LOOPINSERT INTO target VALUES (...);n_count := n_count + 1;IF n_count >= 10000 THEN -- 每1万条提交一次COMMIT;n_count := 0;END IF;
END LOOP;
COMMIT;

❌ 低效做法

  • 每条提交:开销过大
  • 全部完成再提交:回滚段溢出、快照过旧

13. 删除重复记录(基于ROWID)

利用物理地址快速去重。

✅ 推荐写法

Sql
深色版本
DELETE FROM ac01 a
WHERE a.rowid > (SELECT MIN(b.rowid)FROM ac01 bWHERE a.aac002 = b.aac002AND a.aac003 = b.aac003
);

14. 使用表别名(Alias)

提高可读性,避免歧义,加快解析。

✅ 推荐写法

Sql
深色版本
SELECT a.aac001, b.akc010
FROM ac01 a, ac04 b
WHERE a.aac001 = b.aac001;

❌ 低效写法

Sql
深色版本
SELECT ac01.aac001, ac04.akc010
FROM ac01, ac04
WHERE ac01.aac001 = ac04.aac001; -- 字段多时易混淆

六、索引与排序优化(新增)

15. 避免在索引列使用函数或运算

索引列参与函数或运算会导致索引失效,强制全表扫描。

✅ 推荐写法

Sql
深色版本
-- 确保索引列未被修改
SELECT * FROM ac01 WHERE aac001 = '1001';

❌ 低效写法

Sql
深色版本
-- 索引失效,全表扫描
SELECT * FROM ac01 WHERE UPPER(aac001) = '1001';

16. 使用索引优化排序(ORDER BY)

通过索引避免排序操作,显著提升性能。

✅ 推荐写法

Sql
深色版本
-- 确保索引列与ORDER BY字段一致
CREATE INDEX idx_ac01_aac008 ON ac01(aac008);
SELECT * FROM ac01 ORDER BY aac008;

❌ 低效写法

Sql
深色版本
-- 无索引时强制排序
SELECT * FROM ac01 ORDER BY aac008;

七、锁与连接问题处理(新增)

17. 锁等待排查与处理

频繁的锁等待会导致PL/SQL卡死,需通过监控工具定位并优化。

✅ 推荐策略

Sql
深色版本
-- 使用V$SESSION和V$LOCK视图排查锁等待
SELECT * FROM v$session s, v$lock l
WHERE s.sid = l.sid AND l.block = 1;

八、命名规范(新增)

18. 遵循统一命名规范

良好的命名规范提升代码可读性与维护性,间接优化性能。

✅ 推荐写法

Sql
深色版本
-- 包命名:CUX_PAYROLL_PUBLIC_PKG
-- 函数命名:GET_EMPLOYEE_SALARY
-- 过程命名:UPDATE_EMPLOYEE_DEPT_INFO
-- 参数命名:P_EMPLOYEE_ID

总结:PL/SQL优化 Checklist

优化点推荐说明
SELECT * 明确列名
EXISTS vs IN 子查询优先EXISTS
NOT IN 必须用NOT EXISTS替代
UNION 优先UNION ALL
游标嵌查询 改为JOIN一次性获取
BULK COLLECT 大批量操作必备
COMMIT频率 ⚖️ 每1万~10万条提交一次
HAVING ⚠️ 能用WHERE就不用HAVING
索引列函数 避免索引失效
排序优化 利用索引避免排序
锁等待排查 定期监控锁资源

记住:每一次不必要的查询,都是对数据库的一次"伤害"。从今天开始,用更聪明的方式与Oracle对话!

相关文章:

PL/SQL 性能优化指南

PL/SQL 性能优化指南 本文系统梳理了在SQL编写和PL/SQL程序设计中常见的性能问题,并提供可落地的优化策略,帮助开发者写出更高效、更稳定的数据库代码。一、表连接与解析顺序优化 1. 选择最优的表名顺序(适用于RBO,现代已不敏感但建议保留习惯) Oracle在基于规则的优化器(…...

jdbcType-java 类型

在 JDBC 中,jdbcType 用于指定数据库字段的数据类型,确保 Java 类型与数据库类型正确映射。MyBatis 等持久层框架常使用 jdbcType 处理参数和结果集的类型转换。以下是常见的 jdbcType 类型及其说明:JDBC 类型对应 Java 类型说明常见数据库映射示例ARRAY java.sql.Array 数据…...

支配对

本质思路是,通过可接受复杂度个支配对来表示所有点对。找支配对的核心条件是,在任何情况下其他点对都会被支配对淘汰。找支配对往往有两个限制,一是值是否更优,二是是否更容易满足限制。这相当于一个二维偏序问题,只不过我们要自己找偏序的对象。 在序列上,一般是区间问题…...

macOS Sonoma 14.8 (23J21) 正式版 ISO、IPSW、PKG 下载

macOS Sonoma 14.8 (23J21) 正式版 ISO、IPSW、PKG 下载macOS Sonoma 14.8 (23J21) 正式版 ISO、IPSW、PKG 下载 利用小组件进行个性化设置、令人眼前一亮的全新屏幕保护、Safari 浏览器和视频会议的重大更新 请访问原文链接:https://sysin.org/blog/macOS-Sonoma/ 查看最新版…...

DamiBus v1.1.0 发布(给单体多模块解耦)

DamiBus是一款专为单体多模块通讯解耦设计的工具,结合了Bus与RPC的特点,支持事件分发和接口调用。新版本简化了API,弃用了部分方法并新增了更直观的调用方式。其特点包括事务传导、事件标识、监听者排序等,与EventBus和Api相比耦合度更低。性能测试显示处理千万级事件仅需1…...

最小环 Floyd 算法 无向图的最小环问题

P6175 无向图的最小环问题 - 洛谷 k次插点前更新 ans=min(d[i][j]+w[j][k]+w[k][i]) 注意 i,j下边循环范围小于k // Floyd 最小环 O(n^3) #include<bits/stdc++.h> using namespace std;const int N=110; int n,m,a,b,c,ans=1e8; int w[N][N],d[N][N];int main(){cin>…...

macOS Sequoia 15.7 (24G222) Boot ISO 原版可引导镜像下载

macOS Sequoia 15.7 (24G222) Boot ISO 原版可引导镜像下载macOS Sequoia 15.7 (24G222) Boot ISO 原版可引导镜像下载 iPhone 镜像、Safari 浏览器重大更新和 Apple Intelligence 等众多全新功能令 Mac 使用体验再升级 请访问原文链接:https://sysin.org/blog/macOS-Sequoia-…...

Nginx 安装过程

一、安装 1、安装依赖 命令:yum install -y gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel 若出错,可重复执行该命令,直至成功。 在Debian及其衍生系统中使用命令:sudo apt install -y g++ libpcre3 libpcre3-dev zlib1g zlib1g-dev openssl libssl-dev …...

Xcode 26 (17A324) 正式版发布 - Apple 平台 IDE

Xcode 26 (17A324) 正式版发布 - Apple 平台 IDEXcode 26 (17A324) 正式版发布 - Apple 平台 IDE IDE for iOS/iPadOS/macOS/watchOS/tvOS/visonOS 请访问原文链接:https://sysin.org/blog/apple-xcode-26/ 查看最新版。原创作品,转载请保留出处。 作者主页:sysin.orgXcode …...

macOS Tahoe 26 (25A354) Boot ISO 原版可引导镜像下载

macOS Tahoe 26 (25A354) Boot ISO 原版可引导镜像下载macOS Tahoe 26 (25A354) Boot ISO 原版可引导镜像下载 Liquid Glass 惊艳新设计亮相,电话 app 和实时活动丰富连续互通体验,聚焦搜索迎来最大更新 请访问原文链接:https://sysin.org/blog/macos-tahoe-boot-iso/ 查看最…...

mysql数据库服务主从复制实现(基于position)

复制环境搭建 1.1 备份主库信息# mysqldump https://www.cnblogs.com/lifeiLinux/p/19066160 # pxb https://www.cnblogs.com/lifeiLinux/p/19066181 # 克隆 https://www.cnblogs.com/lifeiLinux/p/190942511.2 主数据库二进制日志功能开启 vim /etc/my.cnf server_id=51 log_b…...

海量接入、毫秒响应:易易互联携手阿里云构筑高可用物联网消息中枢

面对换电生态高速发展的通信挑战,易易互联通过采用阿里云 MQTT + RocketMQ 的融合解决方案,成功构建了“海量接入、实时响应、弹性处理、安全可信”的物联网通信底座。作者:横槊、仁中 易易互联:打造安全、便捷、便宜的智能换电网络 易易互联科技有限公司成立于 2017 年,是…...

macOS Sequoia 15.7 (24G222) 正式版 ISO、IPSW、PKG 下载

macOS Sequoia 15.7 (24G222) 正式版 ISO、IPSW、PKG 下载macOS Sequoia 15.7 (24G222) 正式版 ISO、IPSW、PKG 下载 iPhone 镜像、Safari 浏览器重大更新和 Apple Intelligence 等众多全新功能令 Mac 使用体验再升级 请访问原文链接:https://sysin.org/blog/macOS-Sequoia/ 查…...

C++ std::list

std::list 是 C++ STL 中基于双向链表实现的序列容器,其设计目标是提供高效的任意位置插入 / 删除操作。 1、底层结构与核心原理 1.1 节点与链表结构 节点组成:每个元素存储在独立的节点中,节点包含三部分 template <typename T> struct ListNode {T data; /…...

函数是编程范式的原理是什么?

函数式编程范式(Functional Programming,简称 FP)是一种以函数为核心的编程范式,它将计算视为数学函数的求值,强调纯函数、不可变数据和无副作用,避免使用可变状态和命令式控制流。函数式编程范式(Functional Programming,简称 FP)是一种以函数为核心的编程范式,它将…...

能耐高温400度密封圈用什么材质

在现代工业领域,密封圈是确保各类机械设备、管道系统、阀门等密封性能的关键部件。特别是在高温环境下,密封圈的性能直接关系到整个系统的安全稳定运行。那么,面对高达400度的高温环境,我们应该选择什么样的材质来制作密封圈呢?本文将深入剖析几种耐高温密封圈材料,帮助您…...

【IEEE出版|Fellow云集】第五届电气工程与机电一体化技术国际学术会议(ICEEMT 2025)

会议主要围绕“电气工程”、“机电一体化” 等研究领域展开讨论,旨在为电气工程、机电一体化等领域的专家学者、工程技术人员、技术研发人员提供一个共享科研成果和前沿技术,了解学术发展趋势,拓宽研究思路,加强学术研究和探讨,促进学术成果产业化合作的平台。第五届电气工…...

APDU笔记

获取IMEI 标准指令获取[2025-09-16 09:31:13.419]# SEND ASCII> AT+CIMI[2025-09-16 09:31:13.473]# RECV ASCII> AT+CIMI460084492003389OK底层APDU指令AT+CSIM=<length>,"<APDU>" <length>:字符数 "<APDU>":以十六进制字…...

AR眼镜:远程协作的“破局者”,让困难解决“云手帮”

AR眼镜:远程协作的“破局者”,让困难解决“云手帮”pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monos…...

跨网文件摆渡系统功能全解析

内容概要 在当今数字化转型的时代,跨网文件摆渡系统成为企业内外网数据交互的关键工具。特别是像Ftrans Ferry跨网文件安全交换系统这样的专业解决方案,备受企业青睐。在选择跨网文件摆渡系统时,了解其核心功能至关重要。本文将详细探讨“跨网文件摆渡系统有哪些功能”,涵盖…...

跨平台代码同步新时代:Gitee携手GitHub打造开发者高效协作生态

跨平台代码同步新时代:Gitee携手GitHub打造开发者高效协作生态 在开源协作日益成为主流的今天,开发者经常面临多平台代码同步的挑战。为解决这一痛点,国内领先的代码托管平台Gitee推出了创新性的仓库镜像管理功能,实现了与全球最大开发者社区GitHub的无缝双向同步能力。这项…...

CTFer

CTFer成长之路 Web入门 传统CTF线上比赛Web 二进制 逆向Web常见漏洞注入 XSS 文件包含 代码执行 上传 SSRF漏洞出现频率 、复杂程度入门 -> 进阶 -> 拓展信息搜集知己知彼,百战不殆 必备工作,重中之重敏感目录泄露 网站源代码、敏感URL地址(后台) 1.Git泄露使用Git过…...

家政小程序源码一站式开发:助力家政企业数字化转型

在当今数字化时代,传统家政行业正经历着深刻的变革。随着生活节奏的加快和居民生活水平的提高,家政服务需求呈现爆发式增长,尤其在一线和二线城市,人们对家政服务的专业性、预约便捷性和服务质量提出了更高要求。基于微信生态的上门预约家政微信小程序,成为连接用户和服务…...

Gitee推出跨平台镜像功能:一键同步GitHub仓库,开发者协作效率提升50%

Gitee推出跨平台镜像功能:一键同步GitHub仓库,开发者协作效率提升50% 在开源生态日益繁荣的今天,开发者经常需要在多个代码托管平台间切换工作。Gitee近日推出的仓库镜像管理功能,为开发者提供了高效的跨平台代码同步解决方案。这项创新功能可实现GitHub与Gitee之间的代码、…...

DeClotH: Decomposable 3D Cloth and Human Body Reconstruction from a Single Image

DeClotH: Decomposable 3D Cloth and Human Body Reconstruction from a Single Image 从单张图像中分解三维布料和人体重建-CVPR2025 观感上一言以蔽之,单张照片重建三维着装人体的基础上分出了服装...

在 Streamable HTTP 传输模式下启动并测试 MCP Serverr (二)

xxx 本文...

从0到1上手阿里云ARMS:让Java服务监控变得简单

从0到1上手阿里云ARMS:让Java服务监控变得简单 作为后端开发,我们常面临“服务出问题却找不到根因”“线上接口耗时突增但无迹可寻”的困境。阿里云应用实时监控服务(ARMS)正是解决这类问题的利器——它能一键接入Java服务,实现调用链追踪、性能监控、异常告警全流程覆盖。…...

聚焦实用:内外网文件摆渡系统品牌推荐来了!

在数字化时代,企业和机构的网络环境日益复杂,为保障数据安全,多数会采用网络隔离措施。但隔离后仍需进行内外网文件交互,由此催生了内外网文件摆渡系统。内外网文件摆渡系统是专为不同安全等级网络(如内网、外网、隔离区)设计的文件传输与交换解决方案,旨在实现数据安全…...

生物活性肽:从基础研究到治疗应用的潜力与挑战,及计算机辅助筛选的关键作用

在生物医药领域的探索进程中,生物活性肽凭借其独特的生物学特性,逐渐成为研究热点。近几十年来,无论是学术科研机构还是工业界的实验室,都对将肽类物质开发为潜在治疗药物表现出日益浓厚的兴趣。 生物活性肽之所以备受关注,核心在于其具备治疗多种疾病的巨大潜力。…...

MySQL视图定义者和安全性definer/invoker的区别

definer和invoker的区别 在创建视图或者是存储过程的时候,是需要定义安全验证方式的(也就是安全性SQL SECURITY),其值可以为definer或invoker,表示在执行过程中,使用谁的权限来执行。 definer:由definer(定义者)指定的用户的权限来执行 invoker:由调用这个视图(存储过程)的…...

软件测试day2

缺陷 定义:软件在使用过程中使用的任何问题都叫软件的缺陷,简称bug 判定标准:少功能 功能错误 多功能 隐形功能错误 不易使用 缺陷产生的原因:需求阶段 设计阶段 编码阶段 运行系统 缺陷的生命周期:测试-故障分类-故障隔离-故障解决(解决了a缺陷可能会有b缺陷) 软件缺陷…...

软件测式学习

认识软件及测式 认识软件:软件是控制计算机硬件工作的工具(系统软件也是软件) 软件的基本组成:页面客户端-代码服务器-数据服务器(请求-处理-响应) 软件产生过程:需求产生-需求文档-设计效果图-产品开发-产品测试-部署上线 什么是软件测试:使用技术手段验证软件是否满足…...

担心安全与速度?这份跨网文件传输方式推荐清单请收好!

在日常工作和业务协同中,跨网文件传输是一个常见却令人头疼的难题。由于受到网络隔离限制,想要做到快速的传输本身就是一个矛盾题,加上做隔离就是为了保护数据安全,要实现安全又快速的跨网文件传输更是难上加难!本文就来说说跨网文件传输时,面临的安全和速度挑战有哪些?…...

kettle基本操作3:剪切原字段末尾的空格符

0.前言 在同步AS400的数据时,原表字段是固定字段长度的,长度不足时使用空格符填充,故直接"表输入"->"表输出"时,目标表也会同步对应的空格符,很明显这是我们所不想要的,以下是通过"字符串操作"处理组件进行处理即可,这里只需要使用一个…...

Guid g = Guid.Empty;Guid.TryParse(, out g);

Guid g = Guid.Empty; 这行代码把变量 g 初始化为 全 0 GUID: 00000000-0000-0000-0000-000000000000 Guid g = Guid.NewGuid(); // 随机 128 位 Guid h = Guid.Empty; // 全 0,固定不变 // 1. 直接给字符串bool ok = Guid.TryParse("3F2504E0-4F89-11D3-9A0C-0…...

【IEEE出版|上海理工大学】第六届大数据、人工智能与物联网工程国际会议(ICBAIE 2025)

会议旨在为从事大数据、人工智能与物联网工程研究的专家学者、工程技术人员、技术研发人员提供一个共享科研成果和前沿技术,了解学术发展趋势,拓宽研究思路,加强学术研究和探讨,促进学术成果产业化合作的平台。第六届大数据、人工智能与物联网工程国际会议(ICBAIE 2025) …...

MDI Jade9.0中文版详细下载及安装教程,附免费免激活版MDI Jade安装包!!

一、MDI Jade9.0软件下载、 [软件名称]:MDI Jade 9.0 下载链接: (建议手机保存后到电脑端打开,下载解压无需任何密码) 夸克网盘链接:https://pan.quark.cn/s/5d0c712833f1 [软件大小]:248M [软件语言]:中文/英文 [安装环境]:Win7或更高,32/64位操作系统 [温馨提示]:我们…...

C++ std::vector

std::vector 是 C++ STL 中最常用的序列容器之一,它提供了动态数组的功能,结合了数组的高效访问和链表的动态扩展能力。 1、底层结构与核心原理 1.1 内存布局连续内存空间:vector 底层是一块连续的动态分配内存,这使得它支持 随机访问(通过下标 [] 或 at() 方法,时间复杂…...

RC-Explainer | Reinforced Causal Explainer for Graph Neural Networks

论文信息论文标题:Reinforced Causal Explainer for Graph Neural Networks论文作者:Xiang Wang, Yingxin Wu, An Zhang, Fuli Feng, Xiangnan He, Tat-Seng Chua论文来源:论文地址:link论文代码:linkAbstract ​  1. 研究核心背景:GNN 可解释性的重要性与现有方法缺陷…...

批量遍历文件夹内得文件生成md5值

#!/bin/sh# 定义输出文件名 output_file="output.txt"# 清空或创建输出文件 : > "$output_file"# 遍历当前目录下的所有文件(不包括子目录) for file in *; do# 跳过目录和特殊文件if [ -f "$file" ]; then# 计算MD5并提取值(兼容文件名中…...

使用源码启动 seata tc server

使用源码启动 seata tc server1.概述 最近在集成seata的时候,由于官方并没有直接的集成文档,因此在使用的时候会有一些问题,问AI有时又不好解决,这个时候通过源码分析问题就很有必要,本文介绍一下如何启动 server server。 2.实现过程 2.1 下载源码 https://seata.apache.…...

OpenLDAP 常见命令行命令及解析

OpenLDAP 常见命令行命令及解析 本文详细介绍了 OpenLDAP 常用的命令行工具及其使用方法,适合 LDAP 管理员和系统运维人员阅读。 目录 基本工具介绍 常用命令详解 实用操作示例 高级功能使用 故障排查技巧 基本工具介绍 OpenLDAP 提供了一系列命令行工具用于目录服务的操作和管…...

自动化http请求脚本

#!/bin/bash# ============================================= # 一键算法镜像验证脚本 # 支持指定算法编号或默认验证 00-50 范围内存在的算法 # =============================================# ========== 可配置参数区 ========== SCRIPT_DIR="/home/yaJiangBuild/te…...

绕过亚马逊儿童版家长控制的技术漏洞分析

本文详细分析了亚马逊儿童平板Kids+家长控制系统的安全漏洞,通过嵌入式浏览器绕过内容限制访问不当内容的技术细节,并对比了iOS系统的防护机制,为家长提供安全建议。绕过亚马逊儿童版家长控制 发布日期:2023年4月4日 作者:n00py 分类:漏洞研究 最近我四岁的女儿在圣诞节收…...

P2564 [SCOI2009] 生日礼物

P2564 [SCOI2009] 生日礼物#include <bits/stdc++.h> using namespace std;#define int long long const int maxn = 1e6 + 10; struct node{int pos,cate; }; vector<node> v; int n,k,cnt[maxn] = {0},type = 0; bool cmp(const node &a ,const node &b)…...

【C++】类与对象(下) - 详解

【C++】类与对象(下) - 详解pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monospace !important; font-…...

今日计划-2025年9月16日

新增用例,上库一个MR 调测性能脚本,有个可用的脚本 卷腹+1万步...

C#/.NET/.NET Core技术前沿周刊 | 第 54 期(2025年9.8-9.14)

前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录、追踪C#/.NET/.NET Core领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿,助力技术成长与视野拓宽。欢迎投稿、推荐或自荐优质文章、项目、学习资源等…...

C# Avalonia 13- MoreDrawing - GenerateBitmap

C# Avalonia 13- MoreDrawing - GenerateBitmapGenerateBitmap.axaml代码<Window xmlns="https://github.com/avaloniaui"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft.com/expression/blend/2008&q…...

Flutter个性化主题系统:Material Design 3的深度定制

Flutter个性化主题系统:Material Design 3的深度定制本文基于BeeCount(蜜蜂记账)项目的实际开发经验,深入探讨如何构建灵活、美观的Material Design 3主题系统。项目背景 BeeCount(蜜蜂记账)是一款开源、简洁、无广告的个人记账应用。所有财务数据完全由用户掌控,支持本地存…...