不安装Oracle客户端访问服务器数据库
来源:互联网 发布:sql外键怎么设置 编辑:程序博客网 时间:2024/05/18 04:51
环境 :vs2010 C# Oracle11g
问题重现:c#新开发的一个模块中需要访问服务器数据库中的数据,在软件部署时会提示需要安装ORACLE客户端。如果是自己用的话安上也无所谓,不过让客户安装似乎有点麻烦,当然最好的就是绿色版无需安装。查看免ORACLE客户端安装的不少文章,方案真多,可真正用到自己机器上时总出现这样那样的问题。想了想可能是帖子年份不同和里面版本不同导致。找到适合自己的解决方案才是最棒的。不知道看了多少篇文章,出于稳定性考虑,选择Oracle提供的精简客户端(http://download.csdn.net/detail/eisjmo/4362471),步骤如下:
1.安装客户端到指定目录,例如:D:\ORACLE,按照案例修改tnsnames.ora
修改完后可以用pl/sql测试下,如果不行再检查tnsnames中拼写是否有误,我第一次就弄错了,也检查不错来,直接复制的别例子上的然后再仔细改后测试连接通过
2.将安装目录拷贝到bin\debug下,或者在debug下随便创建个文件夹将内容放进去
其实这一步的作用是为下一步设置环境变量做准备,就是为了系统能监测到oci.dll,放到debug下面只是为了将来可以直接随模块部署。有文章说只需要里面的几个dll就可以,不过测试未通过
3.环境变量用代码修改
我参考的一杺①意的博客,这种方法旨在不更改目标机器环境,所以PL/SQL不能自动识别客户端,需要在PL/SLQ中设置oracle的路径,这里就不细说
string oraclePath = System.Windows.Forms.Application.StartupPath + @"\oracle";
Environment.SetEnvironmentVariable("PATH", oraclePath,EnvironmentVariableTarget.Process);//设置环境变量
Environment.SetEnvironmentVariable("NLS_LANG", "SIMPLIFIED CHINESE_CHINA.ZHS16GBK", EnvironmentVariableTarget.Process);//设置客户端字符集
4.编译工程,将debug直接拷贝到客户机器上运行,成功
总结起来真简单,可这真是折腾了一天的结果,过程中遇到各种问题,还好一步一步克服,看了N个博客之后才慢慢有了头绪,回头再看博客已是另外一种感触,不是大家写的不清楚不详细,只是真的需要不同环境不同分析
- 不安装Oracle客户端访问服务器数据库
- 不安装Oracle客户端,访问Oracle数据库
- 不安装客户端,使用ie访问oracle服务器的方法
- ORACLE数据库客户端连接访问服务器
- 不安装oracle客户端连接oracle数据库
- C#利用System.Data.OracleClient实现不安装Oracle客户端访问远程服务器数据
- 不用安装oracle客户端访问数据库
- 不安装oracle客户端连接远程数据库
- 不安装客户端oracle客户端 Nhibernate配置连接oracle数据库
- Oracle 不安装Oracle客户端,使用PLSQL连接Oracle服务器
- C#不安装Oracle客户端连接Oracle数据库,使用微软自带System.Data.OracleClient访问Oracle
- C#实现不安装Oracle客户端访问远程oracle服务
- asp.net 不安装Oracle客户端 连接 Oracle服务器
- 不安装Oracle客户端,使用PLSQL连接Oracle服务器
- Linux下安装Oracle客户端远程访问Oracle数据库
- sqlplus 远程连接oracle数据库,本地不安装oracle客户端
- C#不安装Oracle客户端连接Oracle数据库
- C#不安装Oracle客户端连接Oracle数据库
- 新站怎么操作才能获得搜索引擎的青睐
- 嵌入式OS入门笔记-以RTX为案例:八.RTX的进程间通讯(二)
- C#下用select方法实现socket服务端
- HDU 4925 Apple Tree
- Android——配置文件的保存SharedPreferences进行数据存储
- 不安装Oracle客户端访问服务器数据库
- kmemcache源代码阅读笔记
- cocos2dx遇到的BUG解决方案
- 增加你的营业收入,随着社交媒体分析
- 关于Connection对象的迷惑
- 最长公共子序列
- ym——Android从零开始(8)(Sqlite事务+结合ListView显示+include标签)(新)
- struts2拦截器
- 无线网卡的模式