public static string ConnString = @"Data Source=xxx;USER ID=xxx;PASSWORD=xxx";
/// <summary>
/// 应用程序下获取连接字符串
/// </summary>
//public static string ConnString
//{
// get { // return System.Configuration.ConfigurationManager.ConnectionStrings["connstring"].ToString();
// }
//}

/// <summary>
/// 执行一个Sql语句返回受影响的行数
/// </summary>
/// <param name="sql">insert,update,delete或相关的存储过程</param>
/// <param name="type">命令类型:SQL语句还是存储过程</param>
/// <param name="pars">SQL语句所需要的参数</param>
public static int ExcuteOracleReturnInt(string sql, CommandType type, params OracleParameter[] pars)
{
//定义连接对象
OracleConnection conn = new OracleConnection(ConnString);
//判断连接对象的状态,并且打开
if (conn.State == ConnectionState.Closed || conn.State == ConnectionState.Broken)
{
conn.Open();
}
try
{
//实例化命令对象
OracleCommand cmd = new OracleCommand(sql, conn);
//判断CommandType类型是否是SQL语句还是存储过程
cmd.CommandType = type;
if (pars != null && pars.Length > )
{
foreach (OracleParameter p in pars)
{
cmd.Parameters.Add(p);
}
}
//调用方法执行SQL语句或存储过程
int count = cmd.ExecuteNonQuery();
return count;
}
catch (Exception ex)
{
return ;
}
finally
{
//记得要关闭连接
conn.Close();
}
} /// <summary>
/// 执行一个Sql语句或存储过程,返回一条记录,sqldataReader
/// </summary>
/// <param name="sql">select语句,或相关的存储过程</param>
/// <param name="type">指定命令类型,sql语句还是存储过程,默认的是sql语句</param>
/// <param name="pars">参数的集合</param>
/// <returns></returns>
public static OracleDataReader ExcuteOracleReturnReader(string sql, CommandType type, OracleParameter[] pars)
{
OracleConnection conn = new OracleConnection(ConnString);
if (conn.State == ConnectionState.Closed || conn.State == ConnectionState.Broken)
{
conn.Open();
}
OracleCommand cmd = new OracleCommand(sql, conn);
if (pars != null && pars.Length > )
{
foreach (OracleParameter p in pars)
{
cmd.Parameters.Add(p);
}
}
cmd.CommandType = type;
//当reader.close(),也就是关闭了datareader时,CommandBehavior.CloseConnection 也会关闭连接!
OracleDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
return reader;
} /// <summary>
/// 执行一个sql语句或存储过程,不带参数的!返回一天记录 sqldataReader
/// </summary>
/// <param name="sql"></param>
/// <param name="type"></param>
/// <returns></returns>
public static OracleDataReader ExcuteOracleReturnReader(string sql, CommandType type)
{
OracleConnection conn = new OracleConnection(ConnString);
if (conn.State == ConnectionState.Closed || conn.State == ConnectionState.Broken)
{
conn.Open();
}
OracleCommand cmd = new OracleCommand(sql, conn);
cmd.CommandType = type;
//当reader.close(),也就是关闭了datareader时,CommandBehavior.CloseConnection 也会关闭连接!
OracleDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
return reader;
} /// <summary>
/// 执行一个Sql语句或存储过程,返回一个数据集,dataset
/// </summary>
/// <param name="sql">select语句或相关的存储过程</param>
/// <param name="type">命令类型</param>
/// <param name="pars">命令类型</param>
/// <returns>DataSet</returns>
public static DataSet SelectOracleReturnDataset(string sql, CommandType type, OracleParameter[] pars)
{
OracleConnection conn = new OracleConnection(ConnString);
//数据集识别器对象SqlDataAdapter 会自动打开数据库链接!
OracleDataAdapter sda = new OracleDataAdapter(sql, conn);
if (pars != null && pars.Length > )
{
foreach (OracleParameter p in pars)
{
sda.SelectCommand.Parameters.Add(p);
}
}
sda.SelectCommand.CommandType = type;
DataSet ds = new DataSet();
sda.Fill(ds);
return ds;
} /// <summary>
/// 执行一个sql语句返回一个数据表对象
/// </summary>
/// <param name="sql">select</param>
/// <param name="type">命令类型</param>
/// <param name="pars">参数集合</param>
/// <returns>DataTable</returns>
public static DataTable SelectOracleReturnDataTable(string sql, CommandType type, OracleParameter[] pars)
{
OracleConnection conn = new OracleConnection(ConnString);
OracleDataAdapter sda = new OracleDataAdapter(sql, conn);
if (pars != null && pars.Length > )
{
foreach (OracleParameter p in pars)
{
sda.SelectCommand.Parameters.Add(p);
}
}
sda.SelectCommand.CommandType = type;
DataTable dt = new DataTable();
sda.Fill(dt);
return dt;
} //*******************************************************************
//SelectSqlReturnDataTable方法的重载,不传参数的情况下
/// <summary>
/// 执行一个sql语句返回一个数据表对象,不传参数
/// </summary>
/// <param name="sql">select</param>
/// <param name="type">命令类型</param>
/// <returns></returns>
public static DataTable SelectOracleReturnDataTable(string sql, CommandType type)
{
OracleConnection conn = new OracleConnection(ConnString);
OracleDataAdapter sda = new OracleDataAdapter(sql, conn);
sda.SelectCommand.CommandType = type;
DataTable dt = new DataTable();
sda.Fill(dt);
return dt;
} /// <summary>
/// 执行一个sql语句或相关的存储过程,返回一个值
/// </summary>
/// <param name="sql">select count(*) from tablename where ....</param>
/// <param name="type">命令类型</param>
/// <param name="pars">所需的参数</param>
/// <returns>object</returns>
public static object selectOracleReturnObject(string sql, CommandType type, OracleParameter[] pars)
{
OracleConnection conn = new OracleConnection(ConnString);
if (conn.State == ConnectionState.Closed || conn.State == ConnectionState.Broken)
{
conn.Open();
}
try
{
OracleCommand cmd = new OracleCommand(sql, conn);
cmd.CommandType = type;
if (pars != null && pars.Length > )
{
foreach (OracleParameter p in pars)
{
cmd.Parameters.Add(p);
}
}
object obj = cmd.ExecuteScalar();
return obj;
}
catch (Exception ex)
{
return null;
}
finally
{
conn.Close();
}
} /// <summary>
/// 执行一个sql语句或相关的存储过程,返回一个值,不传参数
/// </summary>
/// <param name="sql"></param>
/// <param name="type"></param>
/// <returns></returns>
public static object selectOracleReturnObject(string sql, CommandType type)
{
OracleConnection conn = new OracleConnection(ConnString);
if (conn.State == ConnectionState.Closed || conn.State == ConnectionState.Broken)
{
conn.Open();
}
try
{
OracleCommand cmd = new OracleCommand(sql, conn);
cmd.CommandType = type;
object obj = cmd.ExecuteScalar();
return obj;
}
catch (Exception ex)
{
return null;
}
finally
{
conn.Close();
}
}

Oracle Help 类的更多相关文章

  1. JDBC连接Oracle工具类

    import java.sql.*;import java.util.ResourceBundle; /** * jdbc工具类,负责: * 1. 加载/注册数据库驱动程序 * 2. 获取数据库连接 ...

  2. c# .netcore oracle连接工具类

    1.先右键->添加NeGet包->引入Oracle.ManagedDataAccess.dll 2.将该类加入项目中 工具类: using System; using System.Col ...

  3. Oracle工具类-生成数据库现有Job的创建脚本

    生成Oracle数据库现有Job的创建脚本 -- 生成现有Job的创建脚本 create or replace procedure proc_generate_job_create_sql is be ...

  4. Oracle帮助类

    /// <summary> /// Copyright (C) Maticsoft /// 数据访问基础类(基于Oracle) /// 可以用户可以修改满足自己项目的需要. /// < ...

  5. python连接Oracle工具类

    上代码: # -*- coding:utf-8 -*- import cx_Oracle import pandas as pd class ORACLE(object): def __init__( ...

  6. C# Oracle数据库操作类实例详解

    本文所述为C#实现的Oracle数据库操作类,可执行超多常用的Oracle数据库操作,包含了基础数据库连接.关闭连接.输出记录集.执行Sql语句,返回带分页功能的dataset .取表里字段的类型和长 ...

  7. C#工具类OracleHelper,基于Oracle.ManagedDataAccess.Client封装

    基于Oracle.ManagedDataAccess.Client封装的Oracle工具类OracleHelper,代码如下: using System; using System.Data; usi ...

  8. C#连接Oracle数据库,通过EF自动生成与数据库表相关的实体类

    C#连接Oracle数据库,通过EF自动生成与数据库表相关的实体类 ps:如需转载,请在转载文章明显处,i标注作者和原文地址 一.准备条件 需要自己电脑上已经安装了Oracle数据库,并且已经创建了相 ...

  9. 电脑上不安装Oracle时,C# 调用oracle数据库,Oracle客户工具

    Oracle的安装包通常都比较大,安装又比较费时,而且如果安装过程中不幸出错,各种蛋疼,即便是安装过N遍的老手,有时候安装起来也觉得挺烦.而工作中,通常服务器上面安装oracle就可以了,我们本地电脑 ...

随机推荐

  1. ZooKeeper的简述

    一.简介 ZooKeeper是一个高性能,分布式的,开源分布式应用协调服务.它提供了简单原始的功能,分布式应用可以基于它实现更高级的服务,比如同步,集群管理,命名空间,配置维护等.ZooKeeper使 ...

  2. 《SVG精髓》笔记(二)

    3. 文档结构 在SVG中使用样式(四种方式,可以联想对照HTML样式方法) 内联样式, 直接在标签里设置style属性 <circle cx='20' cy='20' r='10' style ...

  3. [论文理解] FoveaBox: Beyond Anchor-based Object Detector

    FoveaBox: Beyond Anchor-based Object Detector Intro 本文是一篇one-stage anchor free的目标检测文章,大体检测思路为,网络分两路, ...

  4. linux添加用户所在群组

    etc目录下面有两个文件一个passwd一个grouppasswd里gid是主组,其他组是扩展组,扩展组在/etc/group里描述.useradd username如果不指定,默认创建一个与uid相 ...

  5. 阶段3 3.SpringMVC·_03.SpringMVC常用注解_7 ModelAttribute注解

    这个注解可以作用在方法上,也可以作用在参数上 演示 user里面有三个属性, 表单只提交了两个属性.缺少了date属性 date没有获取到值因为也没提交这个值. 下面返回的user对象.上面就会拿到 ...

  6. Ajax操作的四个步骤

    Ajax操作的四个步骤: 创建Ajax对象 连接服务器 发送请求 接收返回信息 <!DOCTYPE html> <html> <head lang="en&qu ...

  7. Botanical Dimensions:借助第九代智能英特尔® 酷睿™ 处理器实现独特沉浸式体验

    本文介绍位于洛杉矶的互动体验设计工作室 Master of Shapes (MOS) 打造 Botanical Dimensions 时所做出的技术努力.在这种互动式多世界体验中,参与者将穿越丛林,寻 ...

  8. elastic全文检索框架

    什么是ElasticSearch? 1.Elasticsearch是一个基于Lucene的搜索引擎.它提供了具有HTTPWeb界面和无架构JSON文档的分布式,多租户能力的全文搜索引擎.Elastic ...

  9. 【AMAD】newspaper -- 爬取/提取新闻网页中的文本,元数据

    动机 简介 用法 源码分析 个人评分 动机 新闻网页,结构大多是类似的. 所以,能不能用一种通用的爬取方法来提取其中的数据? 简介 Newspapaer1受到requests那种简单性API的启发,通 ...

  10. Ubuntu18.04两步纯小白傻瓜无脑式安装Caffe

    前言 Ubuntu16安装caffe过于繁琐,然而Ubuntu18安装起来却仅仅两步而已 附上官方安装教程:http://caffe.berkeleyvision.org/install_apt.ht ...