要点:本文主要介绍如何使用最简单的方法让C#操作Oracle数据库,不需要安装Oracle客户端之类的东西。

最近由于工作需要,要使用C#从SQLServer向Oracle导入数据。之前没有怎么接触过Oracle数据库,结果一上来就遇到了问题,微软自带的Oracle相关程序集不能独自搞定数据库连接问题。

在网上拜读了很多大神的文章,终于找到了自认为最简单的方法,现简单描述如下:

1.下载要使用的DLL :http://pan.baidu.com/s/1c025fBq

2.将DLL拷到应用程序执行文件所在目录下

3.在项目中添加对Oracle.DataAccess.dll的引用。

4.本项很重要:如果编译时提示类似于“不能加载文件或程序集 oracle.dataaccess 或它的某一个依赖项。试图加载格式不正确的程序。”,将"项目属性->生成->目标平台"设置为x86即可。

以下是测试代码:

using System;
using Oracle.DataAccess.Client; namespace TestOrclConn
{
class Program
{
static void Main(string[] args)
{
string connectionString = "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.88.120)(PORT=1521))" +
"(CONNECT_DATA=(SID=crm)));User Id=crm;Password=crm;"; using (OracleConnection connection = new OracleConnection())
{
connection.ConnectionString = connectionString; try
{
connection.Open();
Console.WriteLine("Connection Successful!");
Console.ReadLine();
}
catch (OracleException ex)
{
Console.WriteLine(ex.ToString());
Console.ReadLine();
}
}
}
}
}

参考链接:

1.http://stackoverflow.com/questions/659341/the-provider-is-not-compatible-with-the-version-of-oracle-client (Chris和 Pandincus两人的综合解决方案)

2.http://www.thebestcsharpprogrammerintheworld.com/blogs/connect-to-an-oracle-database-without-an-oracle-client.aspx

3.http://bbs.csdn.net/topics/390427630?page=1#post-394223722

也可以参照本人的原始笔记,但没有整理,看起来很乱。

如果有更好的方法欢迎留言交流。

C#连接Oracle简单教程的更多相关文章

  1. Navicat连接Oracle详细教程

    Navicat Premium算是比较好的一个可视化数据库管理工具了,短小精悍,一个工具解决三种数据库的连接问题,真正做到了集成管理,对MySQL,SQLServer而言,连接比较简单,就不赘述了,现 ...

  2. Navicat 连接Oracle的教程以及注意事项

    今天使用Navicat 连接Oracle时晕倒了一些坑,特此记录一下! 楼主就是64位win10系统,安装的Navicat是64位的,刚开始配置32位的oci.配置后连接还是提示“Connot loa ...

  3. [转]PROC简单使用用例--VC连接ORACLE

    [转]PROC简单使用用例--VC连接ORACLE 操作系统:windows 7 数据库版本:oracle 10g VS版本:VS2010 前言:连接ORACLE的方式有很多,此处仅以PROC为例,说 ...

  4. ThinkPHP连接Oracle数据库的详细教程

    一. 操作环境搭建 系统:Windows7 旗舰版 64位PHP环境:wampserver2.2e-php5.4.3-httpd2.2.22-mysql5.5.24 32位版ThinkPHP:3.0正 ...

  5. PROC简单的用例--VC连接ORACLE

    操作系统:windows 7 数据库版本号:oracle 10g VS版本号:VS2010 前言:连接ORACLE有许多方法,这里只PROC外壳,说明如何连接oracle,有事吗,希望你告诉我指出,一 ...

  6. java连接oracle的简单实例

    连接oracle的时候,要导入oracle驱动的jar包. 连接的时候,有statement和preparedstatement两种,从代码中可以看出不同. example: package com. ...

  7. 简单的JDBC连接oracle数据库例子

    java连接Oracle数据库 JDBC(Java Data Base Connectivity,java数据库连接),那么我们该如何用java进行数据库的连接呢. import java.sql.C ...

  8. Navicat Premium 连接Oracle 数据库(图文教程)

    一.需要准备的软件 Navicat premium 32位 官方下载地址:http://www.navicat.com.cn/products/navicat-premium Instant Clie ...

  9. plsql连接oracle客户端(简单,实用方案)附件

    plsql 连接 oracle 需要在本地安装oracle客户端(附件中下载): 将文件下载下来后,放到任意目录,例如 D:\instantclient_10_2 修改 tnsnames.ora 文件 ...

随机推荐

  1. Android组件Spinner使用

    Spinner组件是Android当中非常常用的一种用于下拉选择的组件. 本blog当中主要解决的几个问题: 如何在XML中初始化Spinner选项 如何使用代码的方式初始化Spinner选项 一个A ...

  2. Advanced Puppet 系列的前言

    什么是Advanced 在网络上,你能找到大量关于Puppet的安装,配置以及基础用法的文章和博客.你在通过一段时间的实战后,熟练掌握了Puppet基础用法,随着你管理的集群日益扩大,你的部署逻辑越来 ...

  3. (转)Shadow Map & Shadow Volume

    转自:http://blog.csdn.net/hippig/article/details/7858574 shadow volume 这个术语几乎是随着 DOOM3 的发布而成为FPS 玩家和图形 ...

  4. 2014中国软件开发者调查(二):Java、.NET、Web、云计算特点

    继上周五放出第一篇中国软件开发者调查报告后,很多初学者和开发者翘首以盼第二篇.第三篇报告--希望这些调查报告能够给他们带来指导,解决他们的疑惑.确定他们的学习和使用信心.经过笔者在周末的努力,内容更加 ...

  5. .Net规则引擎介绍 - REngine

    规则引擎 规则引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策.接受数据输入,解释业务规则,并根据业务规则做出业务决策 ...

  6. 进程间通信(IPC)介绍

    进程间通信(IPC,InterProcess Communication)是指在不同进程之间传播或交换信息. IPC的方式通常有管道(包括无名管道和命名管道).消息队列.信号量.共享存储.Socket ...

  7. 黄页js-sdk开发总结分享

    2014年,为了方便第三方开发者能够调用本地的一些功能,我们提供了一套js-sdk.通过调用我们的接口,开发者可以定制UI,获取当前的手机状态,调用支付,黄页扫一扫功能,为用户提供更加优质的体验.下面 ...

  8. MySql 执行语句错误 Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near

    关于用Power Designer 生成sql文件出现 错误  [Err] 1064 - You have an error in your SQL syntax; check the manual ...

  9. Storage Systems topics and related papers

    In this post, I will distill my own ideas and my own views into a structure for a storage system cou ...

  10. 如何启动ResourceManager和NodeManager

    登录到bigtop1上,vagrant ssh bigtop1 将/usr/lib/hadoop/libexec/init-hdfs.sh文件内容替换为: #!/bin/bash -ex # # Li ...