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.mzph.cn/news/878608.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Android】 工具篇:ProxyPin抓包详解---夜神模拟器

1️⃣ProxyPin介绍 ProxyPin是一种基于MITM(中间人攻击)的抓包工具,主要用于移动应用程序的安全测试和调试。下面是关于ProxyPin的详解。 2️⃣ 安裝和使用 安裝 下载地址 https://gitee.com/wanghongenpin/network-proxy-flutter/releases 直接拖入模拟器就可以了,打开…

github源码指引:共享内存、数据结构与算法:字符串池StringPool

初级代码游戏的专栏介绍与文章目录-CSDN博客 我的github:codetoys,所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的,可以在任何平台上使用。 专题:共享内存、数…

5. MyBatis 如何实现数据库类型和 Java 类型的转换的?

MyBatis 在处理数据库查询结果或传递参数时,需要将数据库类型与 Java 类型之间进行转换。MyBatis 提供了多种方式来实现这种类型转换,主要通过内置的 TypeHandler(类型处理器)机制。 1. TypeHandler 的作用 TypeHandler 是 MyBat…

C++ STL 之哈希 map unordered_map

一. 概述 在C中,unordered_map 是一个关联容器,是一种基于哈希表的键值对容器,它存储了键值对(key-value),其中每个键(key)都是唯一的。 二. map & unordered_map的区别 map内…

rqueue使用笔记

文章目录 maven依赖引入监听器注入和发送消息接收消息属性配置 项目用到rqueue&#xff0c;虽然知道和redis相关&#xff0c;但是肯定有不一样的地方&#xff0c;做个笔记。 maven依赖 网上找个能用的版本就行&#xff0c;如&#xff1a; <dependency><groupId>c…

「深入理解」HTML Meta标签:网页元信息的配置

「深入理解」HTML Meta标签&#xff1a;网页元信息的配置 HTML的<meta>元素用于提供关于HTML文档的元数据&#xff08;metadata&#xff09;&#xff0c;这些信息对于浏览器和其他处理HTML文档的应用程序来说是非常有用的&#xff0c;如&#xff1a;<base>、<li…

【网络安全】服务基础第一阶段——第九节:Windows系统管理基础---- Windows_AD域

目录 一、域与活动目录 1.1 工作组 1.2 域 1.2.1 域&#xff08;Domain&#xff09; 1.2.2 域控制器&#xff08;Domain Controller&#xff0c;DC&#xff09; 1.2.3 功能和角色 1.2.4 管理和监控 1.2 5 域结构 1.3 组织单元&#xff08;Organizational Unit&#xff…

集成电路学习:什么是IP知识产权

一、IP&#xff1a;知识产权 IP是Intellectual Property的缩写&#xff0c;即知识产权。知识产权是一种无形的财产权&#xff0c;也称智力成果权&#xff0c;它指的是通过智力创造性劳动所获得的成果&#xff0c;并且是由智力劳动者对成果依法享有的专有权利。这种权利包括人身…

性能优化:自动化处理系统设计

性能优化&#xff1a;自动化处理系统设计 前言需求分析系统设计1. 调度中心2. 任务执行器3. 错误处理机制4. 通知系统5. 报表生成器6. 日志记录器 技术实现结语 前言 在当今这个信息爆炸、技术日新月异的时代&#xff0c;企业面临着前所未有的挑战和机遇。随着业务量的不断增长…

基于Yolov5_6.1、LPRNet、PySide6开发的车牌识别系统

项目概述 项目背景 随着车辆数量的不断增加&#xff0c;车牌识别系统在交通管理、停车场自动化等领域变得越来越重要。本项目利用先进的深度学习技术和现代图形用户界面框架来实现高效的车牌识别功能。 项目特点 高效识别&#xff1a;采用 YOLOv5_6.1 进行车牌定位&#xff…

差分传输与单端传输

差分与单端传输 本页讨论模拟信号传输中的两个概念&#xff1a;“单端”和“差分”。模拟信号用于将模拟仪器的输出传送到数字转换器。虽然数字信号对干扰的容忍度相对较高&#xff0c;但模拟信号却可能受到环境中电磁波的干扰和改变。本文档将解释这一问题&#xff0c;并描述…

React 入门第九天:与后端API的集成与数据管理

在React学习的第九天&#xff0c;我集中学习了如何与后端API进行集成。这一步是将静态的React应用转变为动态、可交互的关键。通过与后端通信&#xff0c;我们可以从服务器获取数据、发送用户输入以及处理复杂的业务逻辑。 1. 使用fetch进行数据请求 React没有内置的HTTP库&a…

Assembly 跨域通信AppDomain

Assembly 怎么实现跨域通信 在 .NET Framework 中&#xff0c;AppDomain 是一种用于隔离应用程序的机制&#xff0c;可以在单个进程内创建多个应用程序域&#xff08;AppDomain&#xff09;。每个应用程序域都有自己的程序集、资源和内存空间。通过使用 AppDomain&#xff0c;…

Linux 搭建 Java 部署环境:安装 JDK 和 MySQL 的教程

目录 一、apt 二、JDK 2.1 更新软件包 2.2 安装openjdk 三、MySQL 3.1 使用apt安装MySQL 3.2 查看MySQL的状态 3.3 MySQL 安装安全设置 3.4 设置密码 一、apt apt(Advanced Packaging Tool), Linux软件包管理工具&#xff0c;用于在Ubuntu、Debian和相关Linux发行版上…

OcrLiteNcnn:Windows环境打包及Java调用

目录结构 前言cmake安装源码下载说明Windows源码编译执行“cmake -DCMAKE_BUILD_TYPE=Release ..”执行“cmake --build . --config Release -- -m:6”编译完成识别图片命令行调用Java调用前言 Java实现OCR识别图片中的文字,小编先前整理过一篇在Linux环境中基于“ChineseOcr…

OpenCV入门12.2:SURF与SIFT比较及SURF示例

SIFT (Scale-Invariant Feature Transform): 提出时间: 1999年&#xff0c;由David Lowe提出。关键特点: 能够检测和描述图像中的关键点&#xff0c;这些关键点对旋转、缩放和部分亮度变化具有不变性。计算复杂度: 相对较高&#xff0c;因为SIFT使用了高斯差分核来检测关键点&…

小程序面试题二

一、微信小程序的开发原理是什么&#xff1f; 微信小程序的开发原理主要基于Web规范&#xff0c;采用HTML、CSS和JavaScript等前端技术&#xff0c;并结合微信官方提供的特定框架和API进行开发。以下是小程序开发原理的详细解析&#xff1a; 1. 开发框架与语言 WXML&#xff…

全局安装react

1、首先安装react脚手架 npm install -g create-react-app2、创建react项目 create-react-app my-app3、 PS D:\桌面\papers\subject> create-react-app my-react-appCreating a new React app in D:\桌面\papers\subject\my-react-app.Installing packages. This might …

解释 JVM 的内存模型(堆、栈、方法区等),并简述如何通过调整 JVM 参数来优化应用程序的性能?

JVM&#xff08;Java Virtual Machine&#xff09;的内存模型是 Java 程序运行的基础&#xff0c;理解它的各个组成部分对于优化应用程序的性能至关重要。 JVM 的内存模型主要包括以下几个部分&#xff1a; 堆&#xff08;Heap&#xff09;栈&#xff08;Stack&#xff09;方…

数据结构(1)数据结构基础(单向链表)

一、什么是数据结构 数据结构是一组用来保存一种或多种特定关系的数据的集合。其主要目的是组织和存储数据&#xff0c;以便于高效的访问和修改。在程序设计中&#xff0c;将大量而复杂的问题以特定的数据类型和特定的存储结构存储在内存中&#xff0c;并在此基础上实现某个特定…