OCI编程高级篇(十六) 直接路径数据转换和装载

DMFLDR工具使用介绍 概述 dmfldr(DM Fast Loader)是DM提供的快速装载数据的命令行工具,能够将安装一定格式排序的文本数据以简单、快速、高效的方式装载到达梦数据库中,或者将达梦数据库中的数据安装一定格式导出到文本文件。 类似Oracle SqlLoader工具。 dmfldr简单使用 查看dmfldr工具的参数选项 dmfldr工具在$DM_HOME/bin目录下。 执行dmfldr help即可查看dmfldr的相关参数以及使用方法。 [dmdba@localhost bin]$ ./dmfldr help 阅读详情

访问www.tomcoding.com网站,学习Oracle内部数据结构,详细文档说明,下载Oracle的exp/imp,DUL,logminer,ASM工具的源代码,学习高技术含量的内容。

在上一节中我们设置了字段的数据入口,那么接下来顺理成章的就是把字段数组转换成流数据,然后装载流数据,直接路径装载就算完成了。这个顺序没错,但是在这之前还有事情要做。首先要复位字段数组句柄的状态,然后还要复位直接路径流句柄的状态,每次转换装载前都要复位这两个状态。这两个函数分别为OCIDirPathColArrayReset()和OCIDirPathStreamReset(),下面看看他们的原型和参数。

sword OCIDirPathColArrayReset ( OCIDirPathColArray *dpca, OCIError *errhp );

dpca是一个输入参数,直接路径装载字段数组句柄。

errhp是一个输入参数,错误句柄,用于返回错误码和错误信息文本。

sword OCIDirPathStreamReset ( OCIDirPathStream *dpstr, OCIError *errhp );

dpstr是一个输入参数,直接路径装载流句柄。

errhp是一个输入参数,错误句柄,用于返回错误码和错误信息文本。

现在可以进行字段数组向直接路径流的转换了,函数为OCIDirPathColArrayToStream(),原型和参数如下。

sword OCIDirPathColArrayToStream ( OCIDirPathColArray *dpca,
    OCIDirPathCtx const  *dpctx,
    OCIDirPathStream      *dpstr,
    OCIError                      *errhp,
    ub4                               rowcnt,
    ub4                               rowoff );

dpca是一个输入参数,是直接路径字段数组句柄。

dpctx是一个输入参数,直接路径上下文句柄,代表要装载的对象。

dpstr是一个输入/输出参数,直接路径流句柄。

errhp是一个输入参数,错误句柄,用于返回错误码和错误信息文本。

rowcnt是一个输入参数,字段数组中要转换的数据行数。

rowoff是一个输入参数,从字段数组中第几行开始转换,一般情况下为0,如果一次转换不能把字段数组中的全部行都转换完,那么下次转换就要从上次转换的最后一行的下一行开始,这时rowoff就不是0了。

函数的返回值是OCI_SUCCESS说明字段数组中的数据全部转换成了流数据。如果返回值是OCI_CONTINUE说明流数据的缓冲区太小,字段数组中的部分数据转换成了流数据,这时属性OCI_ATTR_ROW_COUNT返回本次成功转换的数据行数。

转换成流数据后,下一步就是装载数据了,用到函数OCIDirPathLoadStream(),原型和参数如下。

sword OCIDirPathLoadStream ( OCIDirPathCtx *dpctx,
    OCIDirPathStream  *dpstr,
    OCIError                 *errhp );

dpctx是一个输入参数,直接路径上下文句柄。

dpstr是一个输入参数,直接路径流句柄。

errhp是一个输入参数,错误句柄,用于返回错误码和错误信息文本。

装载完数据流,下一步就是提交装载的数据流,这时用到函数OCIDirPathFinish(),原型和参数如下。

sword OCIDirPathFinish ( OCIDirPathCtx *dpctx, OCIError *errhp );

dpctx是一个输入参数,直接路径上下文句柄。

errhp是一个输入/输出参数,错误句柄,用于返回错误码和错误信息文本。

到这里,直接路径装载过程就算结束了,如果有更多的数据要装载,那么可以循环设置数据入口,重置状态,字段数组转换成流数据,装载流数据这几个步骤,最后再提交装载数据。

编程范式的本质:阴阳二分,相融相异 本文源于一次真实的设计讨论,上片博客沿着四种语言实现的路子走下去,本篇博客则沿着设计模式的路线归结到计算机哲学的根。需求本身小得不能再小:给一个存放数据库读取结果的 `Dict` 列表按字段名排序。但当我们把约束加码到"字段演进时排序器永不改动"时,这个需求就不再是工程问题,而成了三种编程范式的正面交锋。沿着这条线走下去,我们最终抵达了一个更根本的结论——**编程范式不是一张并列的表格,而是一棵树,而树的根只有两个。** 阅读详情

相关推荐

〖进阶篇1〗YAML参数解析:从nav2_params.yaml看机器人导航调优

本文深入解析了ROS2 Nav2导航系统中关键的nav2_params.yaml文件,提供了从定位、行为树、运动控制到环境感知等核心模块的参数调优实战指南。文章通过具体场景案例,如狭窄走廊、动态仓库和高精度对接,详细阐述了如何调整AMCL粒子数、控制器权重、代价地图膨胀半径等参数,以解决机器人导航中的犹豫、碰撞和精度问题,帮助开发者实现从“能用”到“好用”的进阶。

m9n0o的博客 417

youki 纯 Rust 实现 seccomp 过滤器:从 OCI 配置到 BPF 指令的完整解析

本篇文章聚焦 youki 仓库中 `experiment/seccomp` 这一实验性子项目:它尝试**完全脱离 libseccomp(C 库)**,用纯 Rust 将 OCI Runtime Spec 中的 `linux.seccomp` 配置直接编译为内核可执行的 cBPF(classic BPF)指令,并顺带实验了基于 seccomp notify(`SECCOMP_RET_USER_NOT

gitblog_00923的博客 271

高功率半导体叠阵激光快慢轴准直优化技术解析

本文深入解析了高功率半导体叠阵激光快慢轴准直优化技术。针对其光束发散特性,文章系统阐述了从光源建模、光学仿真到透镜选型与参数匹配的完整工程流程,并强调了光束整形对于提升加工精度与效率的核心作用。通过优化快慢轴准直,可将原始散光转变为能量集中、均匀性好的高质量光束,为后续工业应用奠定基础。

php55的博客 713

13. DMFLDR 工具使用

dmfldr 是 DM 数据库提供的一种快速装载工具,让用户通过使用快速装载工具能够把按照一定格式排序的文本数据以简单、快速、高效的方式载入到 DM 数据库中,或把 DM 数据库中的数据按照一定格式载出到文本文件中。dmfldr 适合数据量特别巨大的情况,且性能相比其他工具更好,但是功能性方面较差。

aboy12580520的博客 594

Mac开发环境一键配置指南|从零到生产力

类别工具包管理Homebrew终端版本管理容器编辑器效率用一键脚本的话,2小时内可以搞定全部环境。有问题评论区交流~

在代码的世界里,每天进步1% 622

【华为OD机试】真题A卷-Linux发行版的数量(Python)

【华为OD机试】真题A卷-Linux发行版的数量(Python):Linux操作系统有多个发行版,distrowatch.com提供了各个发行版的资料。这些发行版互相存在关联,例如Ubuntu基于Debian开发,而Mint又基于Ubuntu开发,那么我们认为Mint同Debian也存在关联。 发行版集是一个或多个相关存在关联的操作系统发行版,集合内不包含没有关联的发行版。给你一个nxn的矩阵isConnected,其中isConnected[i][i]=1表示第i个发行版和第j个发行版直接

u014481728的博客 941

dmfldr实战

达梦快速装载工具使用

weixin_45380671的博客 1632

黑猫带你学eMMC协议第2篇:eMMC部分相关名词释义

1 前言 1.1 声明 本文依据eMMC JEDEC5.1、网络资料及个人工作经验整理而成,如有错误请留言。 本文结合eMMC JEDEC5.1协议手册查看效果更佳。 1.2 本文背景 本文关键词不包括emmc jedec5.1协议第3章节:《Terms and definitions》内容。关于emmc协议层的关键词,直接查阅spec相关章节即可,清晰明了,此处没必要再列出。 本文为本人工作学习中常听到或常用到关乎于emmc/flash的一些关键词合集,没有固定分类,不需要强行记忆,供查询使用。 1.

黑猫奥利奥的博客 7427

达梦 dmfldr命令工具使用

用户通过使用dmfldr 工具能够把按照一定格式排序的文本数据以简单、快速、高效的方式载入到 DM 数据库中,或把 DM 数据库中的数据按照一定格式写入文本文件。例程: ./dmfldr SYSDBA/SYSDBA CONTROL=’/opt/data/fldr.ctl’当 MODE 为 IN 且 DIRECT 为 TRUE 时,此时数据载入若涉及到大字段对象,需要用户。dmfldr 支持对 DM 数据库的大字段类型数据的载入和导出,DM 数据库支持的大字段。CONTROL 必须是命令行中的第二个参数。

索大仙儿的博客 1371

一文搞懂多速率信号处理中信号插值的本质:从插 0、插原值到线性插值!

信号插值在数字信号处理中经常被使用,但“插值”背后究竟发生了什么,却常被忽略。插0、插原值、线性插值看似只是不同的实现方式,实则对应着完全不同的频域效应与滤波特性。本文将结合公式与MATLAB仿真,深入剖析插0、插原值与线性插值三种典型策略的本质区别。

m0_66360845的博客 917

MMC混合型换流器系统设计与开关模型仿真

摘要:本文针对220kV交流/400kV直流电压等级,设计了由20个半桥和20个全桥子模块组成的混合型MMC换流器系统。通过建立开关函数等效模型,研究了其拓扑结构、工作原理及控制策略,包括NLM调制、电容电压均衡和环流抑制。MATLAB/Simulink仿真结果表明,系统直流电压波动控制在±5%以内,交流电流THD低于1.8%,验证了混合型MMC在高压大功率应用中的良好性能。该研究为工程实践提供了参考依据。 关键词:模块化多电平换流器;开关函数模型;混合子模块;最近电平逼近调制;电容电压均衡

huanghm88的专栏 130

3.Linux基础开发⼯具【由浅入深-Linux】

在 Windows 环境中,我们习惯了双击 或 文件并一路点击“下一步”来安装软件。但在 Linux 的世界里,软件的分发和安装理念有着本质的不同。Linux 强调权限控制、模块化和依赖管理。为了帮您构建完整的 Linux 系统管理知识体系,我们可以将 Linux 下安装软件的方式归纳为五大主流阵营。这是 Linux 下最正统、也是日常使用频率最高的方式。它又细分为“在线仓库安装”和“本地包安装”两种场景。1. 在线仓库安装(如同手机自带的 App Store) 操作系统维护着一个庞大的软件云端仓库。通

插花弄玉的博客 725

Codex 实战 Skills:编写 Skill 自动为 ESP32 芯片生成 MQTT 订阅与发布的基础代码

为了更清晰地展示 Skill 的工作原理和两种语言的差异,以下提供原理图和比对表格。本文深入探讨了如何利用 Codex 的 Agent 智能体技能(Skills)自动化 ESP32 与 MQTT 通信的代码生成过程。我们首先分析了 IoT 开发的痛点,然后详细设计了 Skill 的输入配置,并分别提供了 MicroPython 和 C++ 两种语言的完整代码实现。通过对比两种语言的优缺点,帮助开发者根据项目需求选择合适的语言。最后,我们提供了详细的运行指南,确保开发者能够快速上手。Skill 设计哲学。

yueyeguzhuo的专栏 81

Oracle静默安装,含仅软件安装和数据库安装及常见报错处理方法DBT-10317 DBT-05509 [FATAL] ORA-03114

本文详解Oracle 19c单机版静默安装与数据库创建全流程,涵盖目录配置、响应文件编写、安装及建库命令,附常见报错(如DBT-10317、ORA-03114)解析与解决方案,包含删库指令与日志分析,适合内网环境自学实战,免费干货,实用性强。

qq_41474349的博客 171

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Mysql数据库基础篇(三):全面掌握数据库与数据表操作:深度剖析底层文件差异与核心管理机制

如果你想彻底改掉某个字段的名字,应该使用 change。实例:将 employee表中的 name列修改为xingming注意:使用 change时,即便不改变数据类型,在指定了新列名后依然需要完整地写一遍它的数据类型与约束定义。

2501_93641778的博客 225

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Oracle 增量同步配置指南:只搬变了的数据,不重复也不漏数

Oracle 老 ERP 的数据要同步到新系统,全量搬不动、增量又怕漏。这篇按八步走完:账号权限、看版本号、建任务组、选变化识别字段、定频率、处理删除、排查琥珀色叹号。重点在第四步和第七步,五个坑都在那儿。

weixin_39226344的博客 380

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

智叟云集系统 · 数据分层与管理体验

智叟云集系统 · 数据分层与管理体验 · 数据分层与管理体验。

2301_77178996的博客 411

oracle直方图测试

预期:没有直方图时,优化器假设 status 分布均匀(选择性 = 1/NDV ≈ 1/100),两个查询的预估行数(E-Rows)会非常接近(约 1000 行),很可能对两个查询都选择索引扫描,或者都选择全表扫描,无法区分数据量的巨大差异。

ZHANG123HUO的博客 48

Oracle 19c RAC ASM 在线扩容实战

最近有一套 Oracle 19c RAC 数据库,DATA 磁盘组空间使用率已经接近 90%,需要扩容。环境是两节点 RAC,底层使用 Dell EMC SAN 存储,通过 Multipath 管理共享磁盘,存储侧已经分配好一块 2TB 的新 LUN,只需要在操作系统上识别,然后加入 ASM 磁盘组。整个过程不需要停库,本文记录一下实际操作步骤。这次 Oracle 19c RAC ASM 扩容整体比较顺利。

LuciferLiu_DBA 263

15_MySQL 数据同步与迁移方案 —— 复制 / DataX / Canal / 异构同步(对标 Oracle GoldenGate)

15_MySQL 数据同步与迁移方案 —— 复制 / DataX / Canal / 异构同步(对标 Oracle GoldenGate) 系列定位 :《MySQL 数据库全栈运维实战系列》第 15 篇,与《Oracle 数据库全栈运维实战系列(VMware 版)》同构对标(Oracle 15 OG…

dk843108982的博客 232

任务8-1 数据库用户权限管理

本实战训练MySQL权限管理的完整流程。通过CREATE USER建用户,GRANT按需授权,SHOW GRANTS核查权限。岗位变动时,使用REVOKE回收多余权限,并用FLUSH PRIVILEGES刷新缓存。全流程旨在落实最小权限原则,规范数据库安全运维。

howard2005的专栏 147

带着小白学习-微服务-5 实战:配置中心-数据库连接

如前所述,服务治理主要包含注册中心,前面所有的微服务子工程均已注册到nacos,然后由相应的应用到nacos进行拉取。接下来,我们将使用nacos的配置中心,用于保存和分发应用运行所需的动态配置。比如数据库的各类信息等。

wdyan297的博客 202

SQL Server的系统存储过程sp_MSforeachdb,实现遍历所有数据库,查询数据库中是否存在表

sp_MSforeachdb是SQL Server中一个未公开的系统存储过程,用于遍历当前实例下的所有数据库,并对每个数据库执行指定的SQL命令。它相当于一个“批量循环工具”,可以避免手动逐个数据库操作或写复杂的游标脚本。🔄 核心作用?

weixin_43933286的博客 178

MySQL数据库和表的操作

本文系统介绍了MySQL数据库与表的基本操作。包括创建、查看、修改和删除数据库,重点讲解字符集与校验规则对大小写敏感性的影响;通过SHOW、ALTER、DROP等命令实现数据库管理;介绍数据备份(mysqldump)与恢复(SOURCE)方法;并详细阐述表的创建、结构查看(DESC)、字段增删改(ALTER TABLE)及表删除操作,涵盖字段类型、注释、索引等关键要素,为数据库开发与维护提供完整指导。

2201_75570391的博客 344

Oracle 19c 在线重定义后旧表空间清理及 ASM 存储资源回收 SOP

Oracle 19c 在线重定义后旧表空间清理与 ASM 存储资源回收 SOP

「YYL DBA手记」 数据库 · 架构 · 运维 · 实战 yyldba.blog.youkuaiyun.com 475

AI Agent记忆从不是向量库:Oracle拆解读写分离与记忆晋升门,终结无脑存聊天的伪智能——读Wojtek Pluta演讲

在过去一年里,绝大多数团队在为自己的 AI Agent 增加“记忆能力”时,做法几乎如出一辙:开一个向量数据库(Pinecone / Milvus / Chroma),在每轮对话结束时,把用户的提问和 Agent 的回复转成 Embedding 向量直接往里塞;<summary> 审查 Kyle 的贷款完整性,审批未通过,等待补件。这种记忆能力完全脱离了脆弱的会话上下文窗口,靠的是数据库底座驱动的显式记忆装配。在写路径中,决定一条信息能否从“临时上下文”跃升为“长期持久化记忆”的核心关卡,正是。

鲜衣怒马楼兰月 126
上一篇: OCI编程高级篇(十五) 设置字段数据入口
下一篇: OCI编程高级篇(十七) 直接路径装载总结
tomcoding
博客等级 码龄9年 410粉丝 56原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值