C# 通过Devart连接Oracle(不需要客户端)

16年一月底回了四川,接下来两年就准备在四川工作了。哈哈,虽然收入比沿海城市少了很多,但离老家近些感觉还是很不错的哈,好了,废话不多说,直接上干货。

最近的项目需要用到C#连接Oracle,以前要么是Eclipse连接Oracle,觉得很好连接呀,后面做.net后,很长一段时间数据库都是用sqlserver。所以以为C#连接Oracle应该就改下连接字符串就行了,结果。。。。。。才有了接下来的这篇文章。C#连接Oracle总体来说,方法多种。有的需要安装客户端而且还要配置环境变量,需要用Oracle的驱动。特别是装客户端的方式,觉得有些麻烦,所以写这篇文章记录一下,方便以后查询。

方法:第三方驱动 Devart,下载驱动 http://www.devart.com/dotconnect/oracle/

连接代码如下:

连接字符串
<add name="conStr" connectionString="User Id=youName;Password=password;Server=127.0.0.1;Direct=True;Sid=datasouce;" /> #region 查询单个值
/// <summary>
/// 查询单个值
/// </summary>
/// <param name="commandText">执行的语句</param>
/// <param name="type">执行语句类型</param>
/// <param name="paras">参数</param>
/// <returns></returns>
public object ExecuteScalar(string commandText, CommandType type, params OracleParameter[] paras)
{ using (OracleConnection con = new OracleConnection(connectionString))
{
con.Open();
OracleCommand cmd = new OracleCommand(commandText, con);
cmd.CommandType = type;
if (paras != null)
cmd.Parameters.AddRange(paras); return cmd.ExecuteScalar(); }
} /// <summary>
/// 增删改
/// </summary>
/// <param name="commandText">执行的语句</param>
/// <param name="type">执行语句类型</param>
/// <param name="paras">参数</param>
/// <returns></returns>
public int ExecuteNonQuery(string commandText, CommandType type, params OracleParameter[] paras)
{ using (OracleConnection con = new OracleConnection(connectionString))
{
con.Open();
OracleCommand cmd = new OracleCommand(commandText, con);
cmd.CommandType = type;
if (paras != null)
cmd.Parameters.AddRange(paras); return cmd.ExecuteNonQuery(); }
}
/// <summary>
/// 查询返回dataset
/// </summary>
/// <param name="commandText">执行的语句</param>
/// <param name="type">执行语句类型</param>
/// <param name="paras">参数</param>
/// <returns></returns>
public DataSet ExecuteDataset(string commandText, CommandType type, params OracleParameter[] paras)
{ using (OracleConnection con = new OracleConnection(connectionString))
{
con.Open();
OracleCommand cmd = new OracleCommand(commandText, con);
cmd.CommandType = type;
if (paras != null)
cmd.Parameters.AddRange(paras); OracleDataAdapter oda = new OracleDataAdapter(cmd);
DataSet ds = new DataSet();
oda.Fill(ds);
return ds;
}
} #endregion
上一篇:vue每次修改刷新当前子组件


下一篇:android studio实现Intent通信-------牛刀小试