关闭

C#连接Oracle数据库(无须安装客户端,只须添加dll即可)

标签: 数据库oracleC#net
951人阅读 评论(0) 收藏 举报
分类:

前提:

  • 已安装Oracle数据库的服务器,无须Oracle客户端
  • 对Oracle数据库有一定的了解,至少已创建一个账户及密码
  • 安装VS,会使用C#创建简单的界面

正式步骤:

  1. 下载Oracle.ManagedDataAccess.dll[网上很多dll都已废弃,只有这个dll好用],链接:http://download.csdn.net/download/endlessseaofcrow/9986545
  2. 添加到C#引用。
  3. 命名空间 using Oracle.ManagedDataAccess.Client;
  4. 然后打开Oracle安装的文件夹,以Oracle10为例D:\Oracle10\NETWORK\ADMIN\tnsnames.ora,打开这个文件,会看到,如果没有请按照图片内容输入即可,host=[主机名称],SERVICE_NAME=[随意取]
    5.完成上述后,连接字符串:strConnection = “Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=LocalHost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=orcl)));Persist Security Info=True;User ID=XXXX;Password=XXXX;”;简单说明一下这个连接字符串,HOST=LostHost|127.0.0.1|主机名三者均可,选择一个就行;SERVICE_NAME=[即你刚才在tnsnames中取得名字];然后在输入你的Oracle账户名密码即可
    6.测试代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Oracle.ManagedDataAccess.Client;
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        string  strConnection =@ "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=XXX)));Persist Security Info=True;User ID=XXX;Password=XXX;";//以上为一行,显示为三行
        public Form1()
        {
            InitializeComponent();
            connectTest();
        }
        public void connectTest()
        {
            try
            {
                string str_sql = "SELECT * FROM XXX";
                OracleConnection conn = new OracleConnection(strConnection);
                OracleCommand cmd1 = new OracleCommand(str_sql, conn);
                conn.Open();
                MessageBox.Show("连接成功!");
                conn.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message.ToString());
                MessageBox.Show("READSQL");
            }
        }
    }
}

7.至此已经完成连接数据库,其中涉及到了C#/.net的其他技术如有不懂,可以看我的其他相关博文。

1
0
查看评论

在C#中,远程连接Oracle数据库(不安装客户端,无需多余配置)

由于项目需要,现需要向远程oracle数据库插入数据。由于后期可能无法在部署程序的电脑上安装oracle客户端,网上也有一些解决办法,通常是要下载对应版本的Oracle Instant Client,将访问Oracle需要的部分Dll文件拷贝到客户端本地,然后通过配置环境变量或修改注册表的方式,来达...
  • xiaohu_2012
  • xiaohu_2012
  • 2013-08-23 18:56
  • 1814

C# 不安装客户端 连接Oracle 10G

经一翻折腾,终于可以让C# WinForm程序在不需要安装Oracle客户端的情况下正常操作Oracle数据库,在这里记录一下。方便自己以后查询,也方便大家。 引用System.Data.OracleClient; 运行提示 需要安装Oracle客户端8.1.7; 后来百度发现很多人遇到这个问...
  • u013703664
  • u013703664
  • 2016-05-11 15:53
  • 589

VS环境下C#控制台远程连接oracle数据库无需安装客户端非常简单

VS环境下C#控制台远程连接oracle数据库无需安装客户端非常简单 新增加的引用:Oracle.ManagedDataAccess 并在命名空间增加:using Oracle.ManagedDataAccess.Client;直接上代码: public void setConnecti...
  • weixin_36602742
  • weixin_36602742
  • 2017-06-02 16:35
  • 505

实现c# 直接连接Oracle数据库操作,不用安装各种插件

在c#中连接oracle数据库,遭遇了各种痛苦。 采用VS默认的方式连接oracle发现有版本限制,而且还需要安装oracle的客户端,否则连接不了。客户端的版本与Oracle数据库的版本对接不上也连接不了。 在网上也找了很多,尝试过使用ODP.NET来连接,发现一样不行,就连引用dll后,一跑...
  • brantyou
  • brantyou
  • 2015-06-02 17:04
  • 2856

Redis安装及C# 调用。

Redis安装及C# 调用。 一、Redis简介 Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理。它支持字符串、哈希表、列表、集合、有序集合,位图,hyperloglogs等数据类型。内置复制、Lua脚本、LRU收回、事务以及不同级别磁盘持久化...
  • chihen
  • chihen
  • 2016-09-30 14:01
  • 2449

oracle不需要安装客户端通过vs链接数据库

今天来谈下oracle的一个类库      相信很多朋友写程序多少都要链接数据库,oracle数据库在链接的时候需要用到oracle客户端的类库才能连接,这样写出来的程序使用起来非常的不方便,首先需要安装oracle的客户端,还要配置tnsname.ora文件,这样你写...
  • xiazhipeng1000
  • xiazhipeng1000
  • 2017-10-26 19:34
  • 352

本机不安装oracle客户端如何使用plsql连接远程oracle数据库

首先准备个软件,去oracle官网下载instantclient-basic-nt-12.1.0.2.0.zip,一定要下载32位的哟 地址:http://www.oracle.com/technetwork/topics/winsoft-085727.html 下载plsql,这个百度找一下,很好...
  • aboboo5200
  • aboboo5200
  • 2017-03-13 10:03
  • 248

C#不安装Oracle客户端连接Oracle数据库,使用微软自带System.Data.OracleClient访问Oracle

1、把instantclient-basic-win32-10.2.0.4.zip中的文件解压到指定位置,以下步骤都假设解压目录为:C:\\Oracle\\instantclient 注:下载地址:http://www.oracle.com/technology/software/tech/oci...
  • zhangweixing0
  • zhangweixing0
  • 2014-01-16 11:26
  • 3709

C#远程连接Oracle数据库(不安装客户端)

前言 由于工作需要,现需要从远程Oracle数据库获取数据。本人开始以为可以直接远程,试了下竟然不行,提示“System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本。”。公司的要求就是不装客户端,没法子只好找找看有没有其他方案。 Instant...
  • Mevin
  • Mevin
  • 2012-08-08 16:27
  • 7591

不安装Oracle客户端,访问Oracle数据库

net(C#)编程过程中,使用到了以下三种免安装的Oracle访问组件,能够不安装Oracle客户端,通过这些组件访问Oracle数据库
  • langjitianya43
  • langjitianya43
  • 2016-04-11 20:44
  • 1397
    个人资料
    • 访问:8698次
    • 积分:310
    • 等级:
    • 排名:千里之外
    • 原创:21篇
    • 转载:0篇
    • 译文:0篇
    • 评论:4条
    文章分类
    最新评论