IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

标签:OCI

共 2 篇相关文章

IT 累计浏览 2,011

解决OCI LOB值的ORA-01405错误

这篇讲的是作者基于OCI开发的DataCopy与DataSync两款工具,在处理LOB字段的NULL值时长期存在的一个棘手问题:会触发ORA-01405错误。这个问题曾导致工具在一个交通局图片实时备份的正式项目中无法使用,非常可惜。 最近,随着工具再次引起关注,用户也持续反馈该错误,促使作者重新审视并修改了底层代码。最终,问题被成功修复,根源在于对OCI中LOB类型空值处理的特定场景考虑不足。修改后,工具对LOB数据的兼容性和稳定性得到了显著提升。 作者通过这篇文章分享了此次问题的排查与修复过程,旨在说明工具现已准备好应对各类LOB值场景,并希望它能在更正式、关键的业务环境中发挥作用,弥补当初的遗憾。

IT 累计浏览 2,645

php_call_oracle_procedure

这篇技术分享详细讲解了如何在PHP应用中通过OCI扩展来调用Oracle数据库中的存储过程。 作者从基础概念入手,直接指出了OCI扩展是实现这一操作的关键桥梁。文章的核心价值在于拆解了完整的调用流程,而不是仅仅给出几个代码片段。它清晰地列出了几个关键步骤:首先使用`oci_connect`建立数据库连接,接着通过`oci_parse`准备调用语句。文中特别强调了参数绑定的重要性,演示了如何使用`oci_bind_by_name`正确处理输入与输出参数,并解释了绑定方向(IN、OUT、IN OUT)的设置逻辑。对于存储过程执行后的结果获取,文章区分了普通结果集与REF游标的不同处理方法。 此外,文章也提及了容易出错的细节,比如Oracle数据类型与PHP变量的对应关系、异常处理的捕获方式,以及执行后必须释放语句句柄与游标资源的重要性。整体来看,这篇文章为开发者提供了一份清晰的实现蓝图,覆盖了从连接建立、语句准备、参数交互到资源管理的完整链条,能帮助读者避免常见的陷阱,写出更健壮、高效的代码。