ado.net 操作oracle 数据库 跟操作mssql 的原来基本一样。只是使用不同的命名空间而已。下面举几个例子:

一。 C#读取oracle数据库的表格

 ///ado.net 读取table 列子
///需要添加命名空间 : using System.Data.OracleClient //链接字符串
string connString = @"User ID=system;Password=123456;Data Source=(DESCRIPTION = (ADDRESS_LIST=
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.118)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = ORCL)))";
//创建链接
OracleConnection conn = new OracleConnection(connString);
conn.Open();
string sql = "select * from help";
OracleDataAdapter sda_tab = new OracleDataAdapter(sql, conn);
DataSet ds = new DataSet();
sda_tab.Fill(ds); DataTable tb = ds.Tables[];

二 。 C# 执行 oracle 语句 返回 受影响的行数

 string connString = @"User ID=system;Password=123456;Data Source=(DESCRIPTION = (ADDRESS_LIST=
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.118)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = ORCL)))";
//创建链接
OracleConnection conn = new OracleConnection(connString);
conn.Open();
string sql = "select * from help";
OracleCommand cmd = new OracleCommand(sql, conn);
int ret = cmd.ExecuteNonQuery();

三。C#执行oracle游标的存储过程

       //智友的业务端
public static string oconn = "User ID=" + sys.Sa + ";Password=" + sys.Pwd + ";Data Source=(DESCRIPTION = (ADDRESS_LIST= (ADDRESS = (PROTOCOL = TCP)(HOST = " + sys.Ip + ")(PORT = " + sys.Dk + "))) (CONNECT_DATA = (SERVICE_NAME = " + sys.Data + ")))"; /// <summary>
/// 执行存储过程返回搜影响的行数
/// </summary>
/// <param name="sql"></param>
/// <param name="opar"></param>
/// <returns></returns>
public static int ExecuteNonQuery(string cmdtxt, string fw, OracleParameter[] sqlParme)
{ using (OracleConnection cona = new OracleConnection (oconn))
{
cona.Open();
using ( OracleCommand cmd = new OracleCommand("Proc_PXUnit_Pay", cona))
{
cmd.CommandType = CommandType.StoredProcedure;//说明执行的存储过程
cmd.CommandText = cmdtxt;//指定执行的名称 //cmd.Parameters.Clear();//先清空
cmd.Parameters.AddRange(sqlParme);//添加参数
//添加参数
return cmd.ExecuteNonQuery();
}
} //OracleConnection conA = null;
//OracleCommand cmd = null;
//try
//{ // conA = new OracleConnection(oconn);
// conA.Open();
// cmd = new OracleCommand("Proc_PXUnit_Pay", conA);
// //cmd = conA.CreateCommand();
// cmd.CommandType = CommandType.StoredProcedure;//说明执行的存储过程
// cmd.CommandText = cmdtxt;//指定执行的名称 // //cmd.Parameters.Clear();//先清空
// cmd.Parameters.AddRange(sqlParme);//添加参数
// //添加参数
// return cmd.ExecuteNonQuery(); //}
//catch (Exception ex)
//{
// throw;
//}
//finally
//{
// conA.Close(); //}
}

四  执行游标的存储过程 返回结果集

 /// <summary>
/// 调用通过游标调用oracle的存储过程
/// </summary>
/// <param name="cmdtxt">存储过程的名字</param>
/// <param name="fw"></param>
/// <param name="sqlParme">存储过程的参数</param>
/// <returns></returns>
public static DataSet GetDsByPrec(string cmdtxt, string fw, OracleParameter[] sqlParme)
{
OracleConnection conA = null;
OracleCommand cmd = null; try
{ conA = new OracleConnection(oconn);
conA.Open();
cmd = new OracleCommand("Proc_PXUnit_Pay", conA); cmd.CommandText = cmdtxt;
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Clear();//先清空
//添加参数
if (sqlParme != null)
{
foreach (OracleParameter parme in sqlParme)
{
cmd.Parameters.Add(parme);
}
}
DataSet ds1 = new DataSet();
OracleDataAdapter da1 = new OracleDataAdapter(cmd);//取出数据
da1.Fill(ds1);
return ds1;
}
catch (Exception ex)
{
throw;
}
finally
{
conA.Close(); } }

ado.net 之 oracle 数据库的更多相关文章

  1. ADO.Net对Oracle数据库的操作【转载】

    一 ADO.Net简介 访问数据库的技术有许多,常见的有一下几种:开放数据库互联(ODBC).数据访问对象(DAO).远程数据对象 (RDO). ActiveX数据对象(ADO).我们今天主要要学习A ...

  2. 【转】ADO.Net对Oracle数据库的操作

    一 ADO.Net简介 [转自网络,收藏学习] 访问数据库的技术有许多,常见的有一下几种:开放数据库互联(ODBC). 数据访问对象(DAO).远程数据对象(RDO). ActiveX数据对象(ADO ...

  3. 使用ADO.NET操作Oracle数据库

    本文将示例使用C#的ADO.NET技术调用Oralce的存储过程和函数及操作Oracle数据库. 在oracle的hr数据库中建立存储过程 在oralce的hr数据库中建立函数 新建控制台项目,在主函 ...

  4. VC使用ADO连接远程oracle数据库

    _ConnectionPtr pConn;//连接对像 _RecordsetPtr pRect;//记录集对象 _CommandPtr  pCmd;//命令对象 pRect.CreateInstanc ...

  5. [VSTS]让ADO.NET Entity Framework支持Oracle数据库(转载)

    近期由于项目所需不得不研究Oracle数据库,回想上一次用Oracle还是07年的事情,实习时候做华晨宝马的项目简单接触了Oracle.这次的项目需要基于.NET平台,我个人的习惯是能用微软自带的就不 ...

  6. 利用ADO让普通人用excel读取oracle数据库表的通用办法

    Ref:http://blog.csdn.net/iamlaosong/article/details/8465177 Excel通过ADO方式连接到Oracle并操作Oracle给那些编程能力不强的 ...

  7. 64位程序,利用ADO连接Oracle数据库

        刚好手头项目解决了ADO连接Oracle数据库的问题,记录下来,防止忘记. 项目情况:用32位环境完成算法动态库,结果后来需要升级到64位环境,由64位的软件来调用,则在64位设置下生成算法动 ...

  8. 让ADO.NET Entity Framework支持Oracle数据库

    Oracle最近发布了 Oracle Data Access Component(ODAC)11. 2 Rel 4,其中增加了对 Entity Framework 4.1 和4.2的支持.这让 .NE ...

  9. ADO访问Oracle数据库,连接异常(Unknown error 0x800a0e7a)

    ADO访问Oracle数据库,连接异常(Unknown error 0x800a0e7a) 代码如下:执行Open过程中出现异常,信息为Unknown error 0x800a0e7a  C++ Co ...

随机推荐

  1. Linux下配置nfs并远程挂载实战探讨

    简单介绍: nfs是网络文件系统,允许一个节点通过网络访问远程计算机的文件系统,远程文件系统可以被直接挂载到本地,文件操作和本地没有区别,如果是局域网的nfs那么io的性能也可以保证 nfs是Netw ...

  2. python之面相对象进阶

    一 isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls 的对象 class Foo(object) ...

  3. web框架开发-路由控制

    URL配置(URLconf)就像Django 所支撑网站的目录.它的本质是URL与要为该URL调用的视图函数之间的映射表:你就是以这种方式告诉Django,对于客户端发来的某个URL调用哪一段逻辑代码 ...

  4. iOS开发基础-KVC简单介绍

    一.KVC介绍 键值编码(Key Value Coding,KVC):使开发者不必进行任何操作就可以进行属性的动态读写. KVC操作方法由 NSKeyValueCoding 协议提供,而 NSObje ...

  5. .Net Core应用框架Util介绍(四)

    上篇介绍了Util Angular Demo的目录结构和运行机制,本文介绍Util封装Angular的基本手法及背后的动机. Angular应用由Ts和Html两部分构成,本文介绍第一部分. Angu ...

  6. visual studio 各版本激活码

    visual studio 各版本 激活码 版本 产品型号 激活码 vs2019 Enterprise(企业版) BF8Y8-GN2QH-T84XB-QVY3B-RC4DF vs2019 Profes ...

  7. Linux 修改本地时间 (centos为例)

    1.  tzselect [root@xxxx etc]# tzselect --- 选择时区命令 Please identify a location so that time zone rules ...

  8. 【Swift 4.0】扩展 WCDB 支持 SQL 语句

    前言 入坑 wcdb 有两个月了,整体来说还是很不错的,具体优点可以参考文档说明,由于官方明确说明不支持 SQL 只好自己写一个扩展支持一下了

  9. openstack基础:网络

    Neutron 功能 Neutron 为整个 OpenStack 环境提供网络支持,包括二层交换,三层路由,负载均衡,防火墙和 *** 等.Neutron 提供了一个灵活的框架,通过配置,无论是开源还 ...

  10. thymeleaf循环

    th:each属性用于迭代循环,语法:th:each="obj,iterStat:${objList}"迭代对象可以是Java.util.List,java.util.Map,数组 ...