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

OCI编程高级篇(十八) OCI连接池概念

数据库连接池已经不是新概念了,它以有限的连接让外部更多的客户来访问数据库,一般用于中间服务器中,OCI也有连接池的概念。OCI的连接池是由OCI自己管理的,不需要应用干预,程序通过函数从连接池中得到一个会话,通过会话操作数据库,然后通过函数释放会话,会话被连接池回收,供给其他访问使用。

OCI的连接池也是有局限性的,由于连接池在进程中创建,所以连接池中的会话只能本进程下的线程才能共享,连接池不能跨进程使用。如果要跨进程使用,需要用到驻存连接池,它由数据库来管理,需要调整数据库设置,在数据库层级创建连接池。

我们在这里讨论OCI的连接池,也就是进程内共享的连接池。使用连接池的步骤如下。

1. 创建OCI环境句柄,创建错误句柄。

2. 创建连接池句柄,使用OCI_HTYPE_CPOOL从环境句柄创建。

3. 创建连接池,使用函数OCIConnectionPoolCreate()。

4. 各个线程从连接池得到会话,使用函数OCILogon2()或者OCISessionGet()。

5. 线程通过会话进行数据库的DML或查询操作。

6. 线程操作完数据库,释放会话到连接池,使用函数OCILogoff()或者OCISessionRelease()。

7. 删除连接池,使用函数OCIConnectionPoolDestroy()。

8. 释放连接池句柄。

9. 释放掉环境句柄。

下一节我们介绍用到的函数原型,写一个完整的代码来演示如何使用连接池。


http://www.kler.cn/a/289077.html

相关文章:

  • 从swagger直接转 vue的api
  • 神仙级网络安全入门教程(非常详细),从零基础入门到精通,从看这篇开始!
  • FluentUI使用
  • 【Excel】ToRow超级查找函数
  • 批量重命名Excel文件并排序
  • 基于Java Web的传智播客crm企业管理系统的设计与实现
  • 如何打造一个成功的直播矩阵
  • 【科研新人必看】什么是期刊等级,SCI、核心期刊、省刊
  • qt6 socket 不使用代理 socket error: The proxy type is invalid for this operation
  • 8.29 C++
  • 常用Pandas操作(笔记整理)
  • 前端学习笔记-Web APIs篇-02
  • 基于机器学习的工业制造缺陷分析预测系统
  • 运动多线激光三维重建
  • 解决bug: RuntimeError: Address already in use,一个linux下pytorch多卡训练tcp端口占用的bug
  • SpringCloudGateway网关技术
  • 笔记整理—uboot番外(2)find_cmd函数
  • Selenium+Python自动化测试环境搭建
  • SAP自动化操作
  • L1-084 拯救外星人
  • Python 数据分析— Pandas 基本操作(上)
  • SprinBoot+Vue健康管管理微信小程序的设计与实现
  • 代码随想录训练营day51|图论part2
  • 解锁.NET安全奥秘:敏感数据加密与哈希的深度揭秘
  • C++系列-const所有用法总结
  • HALCON 错误代码 #7709