zoukankan      html  css  js  c++  java
  • Oracle在.NET里面的DBHelper、OracleDBHelper

    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Data.SqlClient;
    using System.Data;
    using System.Configuration;
    using ADODB;
    using System.Data.OracleClient;
    //return new OracleConnection(ConfigurationManager.ConnectionStrings["OracleConnectionString"].ConnectionString);
    namespace EIPWebService.DAL
    {
        public class DBHelperOracle
        {
            private static OracleConnection cnn = null;
            /// <summary>
            /// 连接数据库
            /// </summary>
            public static OracleConnection Cnn
            {
                get
                {
                    if (cnn == null)
                    {
                        cnn = new OracleConnection(@"Data Source=数据库名;User Id=用户名;Password=密码;");
    
                        //string cnnstr = ConfigurationManager.ConnectionStrings["cnnstr"].ToString();
                        //cnn = new OracleConnection(cnnstr);
                        cnn.Open();
    
                    }
                    else if (cnn.State == ConnectionState.Closed)
                    {
                        cnn.Open();
                    }
                    else if (cnn.State == ConnectionState.Broken)
                    {
                        cnn.Close();
                        cnn.Open();
                    }
                    return cnn;
                }
            }
            /// <summary>
            /// int 增删改功能的Oracle语句。实现增删改功能,返回受影响行数。
            /// </summary>
            /// <param name="Oracle"></param>
            /// <returns></returns>
            public static int ExecuteCommand(string Oracle)
            {
                OracleCommand cmm = new OracleCommand(Oracle, Cnn);
                return cmm.ExecuteNonQuery();
            }
    
            /// <summary>
            /// int 增删改功能的Oracle语句。实现增删改功能,返回受影响行数。
            /// [where条件时绑定数据,防止注入式攻击]
            /// </summary>
            /// <param name="Oracle"></param>
            /// <returns></returns>
            public static int ExecuteCommand(string Oracle, OracleParameter[] sp)
            {
                OracleCommand cmm = new OracleCommand(Oracle, Cnn);
                cmm.Parameters.AddRange(sp);
                return cmm.ExecuteNonQuery();
            }
    
            /// <summary>
            /// string 查询返回单行单列的Oracle语句。( 例:select count(*) from 表名或 select name from 表名 )。
            /// </summary>
            /// <param name="Oracle"></param>
            /// <returns></returns>
            public static string ExecuteScalar(string Oracle)
            {
                OracleCommand cmm = new OracleCommand(Oracle, Cnn);
                return cmm.ExecuteScalar().ToString();
            }
            /// <summary>
            /// string 查询返回单行单列的Oracle语句。( 例:select count(*) from 表名或 select name from 表名 )。
            ///  [where条件时绑定数据,防止注入式攻击]
            /// </summary>
            /// <param name="Oracle"></param>
            /// <returns></returns>
            public static string ExecuteScalar(string Oracle, OracleParameter[] sp)
            {
                OracleCommand cmm = new OracleCommand(Oracle, Cnn);
                cmm.Parameters.AddRange(sp);
                return cmm.ExecuteScalar().ToString();
            }
            /// <summary>
            /// OracleDataReader 查询返回符合条件的记录 每次返回一行
            /// </summary>
            /// <param name="Oracle"></param>
            /// <returns></returns>
            public static OracleDataReader ExecuteDataReader(string Oracle)
            {
                OracleCommand cmm = new OracleCommand(Oracle, Cnn);
                return cmm.ExecuteReader();
            }
            /// <summary>
            /// OracleDataReader 查询返回符合条件的记录 每次返回一行.
            ///  [where条件时绑定数据,防止注入式攻击]
            /// </summary>
            /// <param name="Oracle"></param>
            /// <returns></returns>
            public static OracleDataReader ExecuteDataReader(string Oracle, OracleParameter[] sp)
            {
                OracleCommand cmm = new OracleCommand(Oracle, Cnn);
                cmm.Parameters.AddRange(sp);
                return cmm.ExecuteReader();
            }
            /// <summary>
            /// DataTable 查询返回符合条件的记录表
            /// </summary>
            /// <param name="Oracle"></param>
            /// <returns></returns>
            public static DataTable ExcuteDataTable(string Oracle)
            {
                OracleCommand cmm = new OracleCommand(Oracle, Cnn);
                OracleDataAdapter da = new OracleDataAdapter(cmm);
                DataSet ds = new DataSet();
                da.Fill(ds);
                return ds.Tables[0];
            }
    
            /// <summary>
            /// DataTable 查询返回符合条件的记录表
            ///  [where条件时绑定数据,防止注入式攻击]
            /// </summary>
            /// <param name="Oracle"></param>
            /// <returns></returns>
            public static DataTable ExcuteDataTable(string Oracle, OracleParameter[] sp)
            {
                OracleCommand cmm = new OracleCommand(Oracle, Cnn);
                cmm.Parameters.AddRange(sp);
                OracleDataAdapter da = new OracleDataAdapter(cmm);
                DataSet ds = new DataSet();
                da.Fill(ds);
                return ds.Tables[0];
            }
    
            /// <summary>
            /// DataTable 查询返回DataTable 带有分页参数,startRecord 开始记录数,maxRecords 最大记录数 适用于分页控件
            /// startRecord :(AspNetPager1.CurrnetPageIndex - 1 )*AspNetPager1.Pagesize
            ///  maxRecords:AspNetPager1.pagesize
            /// </summary>
            /// <param name="Oracle"></param>
            /// <param name="startRecord"></param>
            /// <param name="maxRecords"></param>
            /// <returns></returns>
            public static DataTable DataTablePage(string Oracle, int startRecord, int maxRecords)
            {
                OracleCommand cmm = new OracleCommand(Oracle, Cnn);
                OracleDataAdapter sdp = new OracleDataAdapter(cmm);
                DataTable dt = new DataTable();
                sdp.Fill(startRecord, maxRecords, dt);
                return dt;
            }
    
    
            /// <summary>
            /// DataTable 查询返回【存储过程的Oracle语句】
            /// 
            /// </summary>
            /// <param name="Oracle"></param>
            /// <returns></returns>
            public static DataTable ExcuteDataTableByProcedure(string procedure, OracleParameter[] sp)
            {
                OracleCommand cmm = new OracleCommand(procedure, Cnn);
                cmm.CommandType = CommandType.StoredProcedure;
                cmm.Parameters.AddRange(sp);
                OracleDataAdapter da = new OracleDataAdapter(cmm);
                DataSet ds = new DataSet();
                da.Fill(ds);
                return ds.Tables[0];
            }
        }
    }


  • 相关阅读:
    GitHub 优秀的 Android 开源项目
    Android SDK代理服务器解决国内不能更新下载问题
    python拓展3 常用算法
    HTML+CSS实现页面
    数据库入门4 结构化查询语言SQL
    2016年蓝桥杯预选赛试题(水题)
    linux操作系统3 vi编辑器
    python应用之爬虫实战2 请求库与解析库
    python应用之爬虫实战1 爬虫基本原理
    SQL常用条件操作符
  • 原文地址:https://www.cnblogs.com/wybshyy/p/13783751.html
Copyright © 2011-2022 走看看