oracle 数据库连接
前言
关于oracle 数据库如何连接,我一开始以为和mysql 和 sql server一样,写好连接语句然后调用相应的dll。
知道我遇到了两个错误:
1.64位程序不能去驱动32位客户端
2.ORA-06401: NETCMN: 无效的驱动程序指示符
第一个可以在iis 中的应用池配置32位程序支持,然后就不会报这个错误。
但是呢,可能64位和32位的驱动程序指示符不一样然后依然报错,网上说要去下载对应的客户端。
然后呢,我大概了解了一下oracle 数据库的连接方式,它的一个调用方式,原理我们的程序会去调用客户端下面的程序(所以客户端需要配置),所以如果客户端安装错误,或者说客户端是32位而我们程序dll是64位也可能保存。
那么我就想有没有不要驱动的呢,那么来看下oracle 连接的一个历史过程。
正文
Oracle的Oracle.DataAccess.Client
其实也是一个比较完美的方式,那就是吧oracle 安装,目录下的dll,引用到自己的程序中。
连接字符串是user id=xxx,下面介绍微软的是user=xxx。
优点是:
1.不在安装客户端也能访问服务器上的oracle(假设Application Server与DB Server 分开)
2.不需要配置TnsNames.Ora文件
那么有什么缺点呢?就是我们程序64位,那么得找到oracle 64位Oracle.DataAccess.Client,32位去找到32位的,而且版本要对上,也不是单纯的去oracle 数据库下面找就可以。
微软的System.Data.OracleClient
在编程界,微软的名声并不好,为啥子呢?因为坑啊,很多东西维护到一半觉得没有维护的必要了,就赶紧撤离。
就是要配置客户端,然后不建议使用,而且微软也说了,提示过期,刺激吗?所以没有介绍得到必要,除非一些老项目中,作为了解即可。
Oracle.ManagedDataAccess.dll
这种是推荐的方式,也是我最后用来作为解决方案的一种方式。
因为oracle 体恤到开发人员的痛苦,要去找Oracle.DataAccess.Client,所以人家干脆就集成了一把,这就很好了。
使用方式就是下载Oracle.ManagedDataAccess.dll或者在包管理器中下载引用即可食用。
结
那就这样吧。
oracle 数据库连接的更多相关文章
- 转 listener.log文件过大导致oracle数据库连接非常慢
数据库(31) 最近发现oracle数据库连接非常慢,sqlplus很快,用客户端就很慢,甚至会无响应. 然后服务器内存一下就飙升到了90%,不是表空间占满了,也不是数据库连接数占满了.重启还是一样 ...
- 成功部署SSIS中含有Oracle数据库连接的ETL包
RT,正式写之前,我想说,真TMD不容易!!! 写博客,责任心,很重要 在百度搜出来的内地博客技术文章(CSDN.ITEYE.CNBLOGS……),大部分都是不全面,只针对一个遇到的问题点的记录,可以 ...
- 银行账户管理系统(oracle数据库连接池,数据库的链接,)
/* * 银行账户管理系统: * 属性:账户id,姓名,金额salary,利息类型: *管理员模块实现的功能: * 1.给用户开户 * 2.查询所有账户信息 * 用户模块实现的功能: * 1.显示用户 ...
- c#与oracle数据库连接池
c#与oracle数据库连接池 在做一个项目,中间要使用webservice和oracle数据库.我在服务端做了用户身份认证,也就是使用session传递用户的登陆信息.在测试时,当用户少的时候,没有 ...
- 单例模式的Oracle 数据库连接应用
新建一个类来实现单例模式的Oracle 数据库连接应用 组织架构如下: 类的具体代码如下: package com.zse.dba; import java.sql.*; //设计模式1:单例模式.保 ...
- window7+wamp环境配置Oracle数据库连接
最近开发需要使用的oracle数据库!翻看了PHP手册,也在网上找了些帖子!功夫不负有心人,花费了四五个小时的时间,终于找到了Oracle的配置方法.下面就讲解下如何配置Oracle数据库连接吧! 附 ...
- Oracle数据库连接、存储过程及调用
Oracle数据库连接.存储过程及调用 1. 定义一个存储过程 create or replace procedure getuser(eid in number, na out varchar, e ...
- oracle数据库连接慢的问题
1.现象 工程为spring+mybatis+xfire,webservice工程服务,实现的接口数据功能 2.修复方法 经过各种尝试: 1.重新部署工程 无果 2.重新部署tomcat ...
- oracle数据库连接无响应的解决
昨天中午时,查询到服务器的数据流水最晚记录是早上8点的,现场查看服务日志很奇怪,日志输出显示挂死在数据库连接这一步.多次调试无果,随后百度发现有资料显示oracle 10.2.1的版本有登录无响应的B ...
- 基于python实现Oracle数据库连接查询操作
使用python语言连接Oracle数据库配置 #coding:utf-8 import cx_Oracle as oracle db=oracle.connect('root/123456@192. ...
随机推荐
- Fiddler 延迟请求
1.开启浏览器代理 2.fiddler设置要抓取的域名 3.设置fiddler代理端口 Tools->Options->Connections 4.设置接口延时 5.访问页面即可延时此接口
- iview 部分表单验证
引用:https://github.com/ElemeFE/element/issues/3686 zxmantou commented on 25 Feb 2019 @Murraya-panicul ...
- P2670 [NOIP2015 普及组] 扫雷游戏
题目背景 NOIP2015 普及组 T2 题目描述 扫雷游戏是一款十分经典的单机小游戏.在 nn 行 mm 列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格).玩家翻开一 ...
- 2.4G无线音频传输方案市场调研分析
基本概念 所谓的2.4G音频传输,不是使用标准的wifi和蓝牙协议传输,而是使用私有的2.4G通信协议来实现点对点,一对多和多对一的音频传输.2.4G私有协议音频传输,有这低延时,距离远,声音高清 ...
- Python3解决UnicodeDecodeError: 'utf-8' codec can't decode byte..问题最快解决方案
问题: 使用python3 作为socket通信的时候,出现了这个错误:UnicodeDecodeError: 'utf-8' codec can't decode byte 0x92 in posi ...
- KTL 一个支持C++14编辑公式的K线技术工具平台
K,K线,Candle蜡烛图. T,技术分析,工具平台 L,公式Language语言使用c++14,Lite小巧简易. 项目仓库:https://github.com/bbqz007/KTL 国内仓库 ...
- cpprest示例微服务链路嵌套调用层数1000以及跟踪
本demo使用本人两个github项目cpprestsdk4mingw,zhepler-wxWdigets编写,一个简单的rest服务器cpprestbox,只提供GET方法方便测试,可以添加修改ap ...
- 求给定两个排序好的数组中第k大的数
这个问题比求两个长度相等的排序数组的上中位数难度要高一点,难就难在不是求中位数了,但是我们要学会举一反三,可以尝试通过分析将求第k大的数转化为求中位数.将数组中不可能的数排除,在剩下可能的数中求中位数 ...
- [TM4]TM4C123G使用笔记
[TM4]TM4C123G使用笔记 TI的板子真让人头大甚至重装了两遍KEIL5 如何用keil5新建工程可以参考如下博客: https://blog.csdn.net/D_XingGuang/art ...
- 3D渲染速度慢,花重金买显卡还是用云渲染更划算
3D渲染对建筑师和设计师来说并不陌生,3D渲染的过程中出现渲染卡顿.特殊材质难以渲染,或者本地配置不足.本地渲染资源不够时,常常会影响工作效率.本文比较了3D渲染时,为提高工作效率,买显卡还是用云渲染 ...