C#连接Oracle数据库的相关试用过程
.NET与SQL Server同属微软家族的产品在开发过程中一般问题不大。但近来,项目组要求应用程序的数据库转向Oracle数据库,在试验过程中遇到了一些莫名其妙的麻烦,虽然问题已经解决,但我还不知道是什么原因?
下面是我试验C#连接Oracle数据库过程的基本介绍:
1、C#连接Oracle数据库环境
数据库:Oracle 8.17安装的是企业版
开发工具:Visual Studio2003
操作系统:Windows 2003
项目采用的是C/S结构
试验是在同一机器上进行的
2、C#连接Oracle数据库问题起因及结果
1)程序编写之前Oracle数据库运行正常,通过客户端访问工具正常访问,服务也正常。程序代码采用的是.NET提供专门针对Oracle数据库的开发组件:usingSystem.Data.OracleClient,
2)程序调试运行,运行到OracleConnection.Open()方法的时候,就会弹出“Couldnotcreateanenvironment:OCIEnvCreatereturned-1.”仔细检查我的程序和用户名、密码以及服务名,都没什么问题,但不管怎么样就是弹出那个异常信息。最后google一下,发现了这个问题出现的大致原因是说我的权限不够,需要对Oracle安装的主目录重新设置一下运行权限,可那个信息据说都是针对asp.net的程序,天知道对于C/S程序怎么出现这个问题。
3)没办法,即然出现这个问题就要想办法解决,因为我的Oracle主目录是安装在FAT 32文件类型目录下面,而不是他们所说的NTFS,所以网上提供的解决方法根本就不能进行下去,请教其它的人,都说c/s程序没有出现这个问题,也没解决。faint,难道我的操作有问题。
4)现在事情即然到了这一步,只要出杀手锏,把Oracle的安装环境重新配置。备份Oracle数据库,卸载Oracle,重新在我的系统目录(NTFS)上面在装一个Oracle,安装完毕,启动监听程序和服务,运行程序,居然运行成功。难道真的与文件类型有关系?