OCI编程高级篇(十一) 其他一些LOB操作函数

Oracle官方的OCI文档 oracle的官方资料,OCI编程。OCI基本函数和流程介绍 立即下载

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

针对LOB的操作除了写和读函数之外,还有其他一些常用的函数,我们来介绍一下。

1. LOB擦除函数,对一段LOB数据进行擦除,CLOB填充为空格,BLOB填充为0。函数原型和参数如下。

sword OCILobErase2 ( OCISvcCtx *svchp,
    OCIError           *errhp,
    OCILobLocator *locp,
    oraub8              *amount,
    oraub8              offset );

svchp是一个输入参数,OCI服务上下文句柄。

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

locp是一个输入/输出参数,LOB定位符,与要擦除的LOB关联。

amount是一个输入/输出参数,要擦除LOB数据的数量,CLOB以字符计算,BLOB以字节计算。

offset是一个输入参数,要擦除数据的起始位置,从1开始计算,CLOB以字符为单位,BLOB以字节为单位。

2. 得到LOB的长度函数,原型和参数如下。

sword OCILobGetLength2 ( OCISvcCtx *svchp,
    OCIError           *errhp,
    OCILobLocator *locp,
    oraub8              *lenp );

svchp是一个输入参数,OCI服务上下文句柄。

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

locp是一个输入参数,要获取长度的LOB定位符。

lenp是一个输出参数,返回LOB的长度,CLOB以字符计算,BLOB以字节计算。

3. 判断一个LOB是否打开了,注意这里是判断LOB是否打开,不是定位符是否打开,如果一个定位符先与一个LOB1关联,然后打开,再与一个LOB2关联,也打开,如果后面把定位符关闭了,那么只是关闭了LOB2,LOB1仍然是打开的,还是需要把定位符与LOB1关联,然后可以关闭LOB1。

sword OCILobIsOpen ( OCISvcCtx *svchp,
    OCIError           *errhp,
    OCILobLocator *locp,
    boolean             *flag );

svchp是一个输入参数,OCI服务上下文句柄。

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

locp是一个输入参数,要测试是否打开的LOB定位符。

flag是一个输出参数,如果返回TRUE表示LOB已打开,返回FALSE表示LOB未打开。

4. 截断LOB函数,把LOB数据截断为一个新的长度,只能往短了截。

sword OCILobTrim2 ( OCISvcCtx *svchp,
OCIError           *errhp,
OCILobLocator *locp,
oraub8              newlen );

svchp是一个输入参数,OCI服务上下文句柄。

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

locp是一个输入/输出参数,要截断的LOB定位符。

newlen是一个输入参数,LOB的新长度,CLOB以字符计算,BLOB以字节计算。

我用 Python 监听了自己的键盘,生成击键热力图,看看每天到底在“摸鱼”还是“搬砖”? 数据采集(监听)、持久化(I/O)与可视化展示,必须是三个完全独立的模块,这符合单一职责原则。在多线程读写 Python 字典时,锁住的时间要尽可能短,防止 I/O 线程把高频的监听线程阻塞住。这类涉及底层的代码与“键盘记录木马”只有一线之隔。永远不要把击键记录通过网络上传,所有数据必须localhost消化。人脑对枯燥的 JSON 日志是不敏感的,但对颜色和空间极其敏感。这也是为什么 Prometheus + Grafana 是标配。使用ctypes。 阅读详情

相关推荐

OCI编程高级篇(八) LOB写操作

介绍OCI写入LOB的步骤,从打开LOB到关闭LOB,中间的写操作可以是流模式,也可随机写入,一个完整的示例代码演示写入过程。

tomcoding的博客 834

Ubuntu24.04LTS上Ollama GPU加速配置指南:从驱动安装到多卡均衡负载

本文详细介绍了在Ubuntu24.04LTS系统上配置Ollama GPU加速的完整指南,包括NVIDIA驱动安装、CUDA Toolkit配置、Ollama在线与离线安装方法,以及多GPU负载均衡优化策略。通过实战案例和性能调优建议,帮助开发者充分利用硬件资源提升大型语言模型的运行效率。

weixin_29255731的博客 760

Oracle - DBMS_LOB函数和用法

GETLENGTH     返回指定 LOB 数据的长度的函数 DBMS_LOB.GETLENGTH(lob_loc IN BLOB/CLOB/BFILE/NCLOB) RETURN INTEGER; OPEN     打开LOB对象     DBMS_LOB.OPEN( lob_loc IN OUT NOCOPY BLOB/CLOB/BFILE, op

袭冷 4万+

机器学习第五章之决策树模型

机器学习专题系列

wangyutao12345的博客 5181

以太网测试用例(光模块线缆、网卡类设备、交换类设备)

LeCroy力科网络测试相关的测试用例分享:光模块/DAC/ACC/AEC/AOC测试,网卡类产品测试/GPU/DPU/SmartNIC,交换类产品测试。涉及物理层的FEC,SKEW,Tx/Rx Taps和Layer23层的网络性能测试/吞吐量延迟抖动丢包率背靠背性能,以及RDMA带状况的网络协议分析。同步提供400G高速的以太网的损伤,提供定量,可重复的负面压力测试环境。

专注有线以太网性能测试--丹麦信雅纳网络(Xena Networks) 1989

OCI编程高级篇(六) LOB定位符

LOB操作是OCI中比较复杂的一部分,我们一步步看具体的操作,这一节先介绍LOB定位符的分配,空LOB定位符的创建。

tomcoding的博客 628

为YOLOv11引入加权双向特征金字塔(BiFPN)

本文介绍了将BiFPN应用于YOLOv11模型以提升边缘设备上小目标检测精度的实践。针对传统FPN在特征融合时的信息丢失问题,采用带可学习权重的BiFPN结构进行改造,实现了不同层级特征的动态融合。重点阐述了WeightedFeatureFusion模块的实现细节、neck结构改造方法及训练部署注意事项。实验表明,该改进使小目标AP提升3.1%,参数量仅增加5%,在精度和效率间取得良好平衡。文章还分享了权重初始化、归一化处理等实用技巧,并强调需根据数据特性评估改进效果,重新计算anchor等关键点。

as1225120794的博客 349

OCI 批量入库Lob字段

最近由于项目需要开始使用OCI接口编写Lob 字段的删除 更新 插入包括批量插入! 批量插入有两种方法: 1.建立临时大对象,对每行每列的分配一个OCILobLocator,并建立相应的临时大对象,将数据通过lobWrite写入;最后邦定某一列,参数locator是数组元素;通过OCIStmtExecute执行n行. 该方法缺点 :速度慢,(释放资源和入库的时间差不多) 2.先批量入库lo

qdddyezi的专栏 763

YOLOv8进阶:SEAM注意力与Repulsion Loss双剑合璧,突破遮挡检测瓶颈

做目标检测时,最头疼的莫过于目标被遮挡的场景——行人被树木挡住一半、车辆被广告牌遮挡部分轮廓……这些情况往往让模型“犯迷糊”。但现在,有了SEAM注意力模块和Repulsion Loss排斥损失,我们就能让YOLOv8在遮挡场景下也能“拨开迷雾见真章”。这篇教程会带你一步步理解这两个技术,并亲手把它们融入YOLOv8,让你的检测模型在复杂场景下也能稳如泰山。

FJN110的博客 232

《使用R包ggtree进行进化树的绘制与美化》

都2023年了,才去使用Y叔早在2018年发表的进化树构建利器——ggtree。刚好最近在做基因家族分析,进化树的构建与美化确实有点麻烦,先前使用MEGA11进行了绘制,但图像简陋,于是导出了nwk文件,准备使用其他软件进行美化。这里,我使用ggtree包进行操作。

沉香best的博客 6893

Oracle8 的OCI常用函数及一部分参数说明

Oracle8的OCI常用函数 1. OCIHandleAlloc() Purpose: This call returns a pointer to anpointer to an allocated and initialized handle. 语法原型:5个参数          sword    OCIHandleAlloc(      CONST dvoid *

2491

数字电路与逻辑设计实验二 组合逻辑电路

1.组合逻辑电路功能测试 (1)用 2 片 74LS00 组成图 2.1 所示逻辑电路。为便于接线和检查,在图中要注明 芯片编号及各引脚对应的编号。 (2)图中 A、B、C 接逻辑开关,Y1,Y2 接发光管电平显示。 (3)按表 2.3 要求,改变 A、B、C 输入的状态,填表并写出 Y1,Y2 的逻辑表达式。 (4)将运算结果与实验结果进行比较。 2.测试用异或门(74LS86)和与非门组成的半加器的逻辑功能。 根据半加器的逻辑表达式可知,半加 器 Y 是 A、B 的异或,而进位 Z 是 A

欢迎交流学习心得 1277

OCI编程高级篇(九) LOB读操作

OCI对LOB的读操作介绍,通过代码演示了上一节中写入的LOB数据怎样读取出来。

tomcoding的博客 635

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...

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

OCI编程高级篇(七) LOB绑定和定义

介绍LOB定位符的绑定和定义操作,在表中插入一行空LOB数据,然后向LOB写入数据,这之间要经过复杂的操作。

tomcoding的博客 1206

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

OCI编程高级篇(十) 如何更简单的获取LOB定位符

通过简单的方法得到LOB定位符,省略一些繁杂的操作,这就是DML中的RETURNING子句,可以合并一个查询到DML语句中。

tomcoding的博客 488

廖雪峰Python教程[完整版]

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

用PHP操纵Oracle的LOB类型的数据

用过Oracle的人都知道,Oracle有一种数据类型叫VARCHAR2,用来表示不定长的字符串。VARCHAR2也是Oracle公司推荐使用的类型。但使用VARCHAR2有个问题:最大只能表示4000个字符,也就相当于2000个汉字。如果你的程序中某个字符的值要大于20002个汉字,用VARCHAR2就不能满足要求了。这时候,你有两个选择,一是用多个VARCHAR2来表示,二是用LOB字段。这里

phphot 1992

IMP 导入数据报错 OCI-21500 OCI-22275

IMP导入数据报错如下: OCI-21500: internal error code, arguments: [kgepop: no error frame to pop to], [], [], [], [], [], [], [] OCI-22275: invalid LOB locator specified xExExE@@@@@@@@Errors in file

CR7 - Xyy -- For oracle 4017

oracle OCI lob操作

可以有两种方式来bind lob字段 1)直接绑定lob 值 2)绑定lob locator指针 对于 直接绑定lob值的操作如下 char* sql = "insert into tab_lob(id,lob) values(:1,:2)"; OCIStmtPrepare(stmthp, errhp, sql, strlen(sql), OCI_NTY_SYNTAX, OCI_DE...

weixin_30527143的博客 949

人大金仓数据库KingbaseES OCI中的大对象及其操作

大对象、CLOB、BLOB、人大金仓、KingbaseES。

arthemis_14的博客 1301

让ThinkPHP3.2.3 支持对Oracle LOB数据的操作

让ThinkPHP3.2.3 支持对Oracle LOB数据的操作1. 问题由来PHP2. 配置PHP:OCI8首先,原理是利用PHP OCI8的拓展函数库。所以,必须先把OCI8,和php_oci8和php_oci8_11 功能开启。 可以wampserver上直接进行设置。如下图: 设置成功后,可以通过phpinfo() 查看,显示enabled即开启成功,如下图。 2. PHP:

Fighting! 2807

PL/SQL 查询select报错:A query with LOB‘s requires OCI8 mode, but OCI7 mode is used

使用pl/sql 利用select 查询时报错: A query with LOB's requires OCI8 mode ,but OCI7 mode is used

wanglepingwangleping的博客 2092

DBMS_LOB

1.LOB背景 在现在的系统开发中,需要存储的已不仅仅是简单的文字信息,也包括一些图片、音像资料或者超长的文本,这要求后台数据库具有存储这些数据的能力,Oracle通过提供LOB对象实现了该功能。 2.LOB 在ORACLE数据库中,LOB大对象类型是用来存储大量的二进制和文本数据的一种数据类型(一个LOB字段可存储达4GB的数据)。目前LOB分...

axing2408的博客 908

OCI几个小问题

1、CLOG/BLOG的插入 找了很多OCI的例子以及一些PHP的例子,基本上都是同一种做法: a、OCIStmtPrepare预处理SQL语句:"insert into mytable (myimg) values (empty_blob()) returning myimg into :pImg" b、调用OCIDescriptorAlloc,用参数OCI_DTYPE_LOB,获得...

iihero@优快云 738

oracle php lob,php 操作 oracle lob 数据2

CREATE SEQUENCE mylobs_id_seqNOMINVALUENOMAXVALUENOCYCLECACHE 20NOORDERINCREMENT BY 1;CREATE TABLE mylobs (id NUMBER PRIMARY KEY,mylob CLOB)插入header("content-type:text/html;charset=utf-8");error_repor...

weixin_31408789的博客 124

oracle lob值是什么,oracle LOB介绍

发信人: oracle_mo(洗洗睡了... ..)整理人: zrsoft(2001-11-05 21:43:17), 站内信件0、LARGE OBJECTORACLE8中有4种LOB- BLOB:Binary Large Object- CLOB:Character Large Object- NCLOB:固定长度的多字节Character Large Object- BFILE:DB外部的二进...

weixin_34441120的博客 741
上一篇: OCI编程高级篇(十) 如何更简单的获取LOB定位符
下一篇: OCI编程高级篇(十二) 直接路径装载概念和步骤
tomcoding
博客等级 码龄9年 410粉丝 56原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值