C# 无Oracle客户端连接数据库

本文介绍如何在公司信息安全限制下,通过CoreLab.Oracle等插件封装一个简单的数据库操作类,实现与Oracle数据库的交互,避免直接安装Oracle客户端。包括数据库连接、执行SQL语句等功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在公司开发一个小型项目,需要与数据库打交道,公司数据库用的是Oracle数据库。公司信息安全管制的比较严格,Oracle客户端属于管制软件,不允许随便安装!无奈只能寻求不安装Oracle客户端链接数据库的方法,参考网上众多大神的成果我这里也封装了一个简单数据库操作类。用到的插件有:CoreLab.Oracle;CoreLab.Datausing System;using System.Collections.Generic;using System.Text;using System.Data;using CoreLab.Oracle;using CoreLab.Data;namespace Program{ public abstract class SqlHelper { private static string connectionStr = "User Id=root;Password=root;Server=127.0.0.1;Pooling=True;Min Pool Size=1;Max Pool Size=10;Direct=True;Port=1521;Sid=***"; #region 数据库连接 OracleConnection /// /// 连接数据库 /// /// 连接字符串 /// 数据库连接对象 public static OracleConnection GetConnection() { try { OracleConnection conn = new OracleConnection(connectionStr); return conn; } catch (Exception) { return null; } } #endregion #region 执行非查询类sql语句 ExecuteNonQuery /// /// 执行非查询类sql语句 /// /// sql语句 /// 参数数组 /// 受影响的行数 public static int ExecuteNonQuery(String sql, OracleParameter[] parameters) { int i = 0; try { using (OracleConnection con = new OracleConnection(connectionStr)) { con.Open(); using (OracleCommand cmd = new OracleCommand(sql, con)) { cmd.Parameters.AddRange(parameters); OracleTransaction tran = con.BeginTransaction(); cmd.Transaction = tran; i = cmd.ExecuteNonQuery(); tran.Commit(); return i; } } } catch (Exception) { return i; } } #endregion #region 执行查询语句 ExecuteQuery /// /// 执行查询语句 /// /// sql语句 /// 参数数组 /// 结果集 public static DataSet ExecuteQuery(String sql, OracleParameter[] parameters) { try { using (OracleConnection con = new OracleConnection(connectionStr)) { con.Open(); using (OracleCommand cmd = new OracleCommand(sql, con)) { cmd.Parameters.AddRange(parameters); OracleDataAdapter oda = new OracleDataAdapter(cmd); DataSet ds = new DataSet(); oda.Fill(ds); return ds; } } } catch (Exception) { return null; } } }}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值