(请大家讨论)封装的Oracle数据库操作类

aaa_zzz_000 2009-06-30 11:56:23
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using System.Text;
using System.Data.OracleClient;

/// <summary>
/// DB 的摘要说明
/// </summary>
public class Oracle_DB
{

public Oracle_DB()
{

}

public int ExcuteSqlWithNoQuery(string vSql)
{
int vI = 0;

OracleConnection vOracleConnection = OpenOraDBConn();
OracleCommand vOracleCommand = new OracleCommand(vSql, vOracleConnection);
try
{
vI = vOracleCommand.ExecuteNonQuery();
vOracleCommand.Dispose();
}
catch (OracleException ex)
{
throw ex;
}
finally
{
CloseOraDBConn(vOracleConnection);

}
return vI;
}

public int ExcuteSqlWithSingleNum(string vSql)
{
int vI = -9999;
OracleConnection vOracleConnection = OpenOraDBConn();
OracleCommand vOracleCommand = new OracleCommand(vSql, vOracleConnection);
OracleDataReader vOracleDataReader = vOracleCommand.ExecuteReader();
while (vOracleDataReader.Read())
{
vI = vOracleDataReader.GetInt32(0);
break;
}
vOracleDataReader.Close();
vOracleConnection.Close();
if (vI == -9999)
{
return -9999;
}

return vI;
}
public string ExcuteSqlWithSingleString(string vSql)
{
string vTempStr = null;
OracleConnection vOracleConnection = OpenOraDBConn();
OracleCommand vOracleCommand = new OracleCommand(vSql, vOracleConnection);
OracleDataReader vOracleDataReader = vOracleCommand.ExecuteReader();

while (vOracleDataReader.Read())
{
vTempStr = vOracleDataReader.GetString(0);
break;
}

vOracleDataReader.Close();
vOracleConnection.Close();
return vTempStr;
}

public DataTable ExcuteSqlWithDataTable(string vSql)
{
DataTable vDataTable = new DataTable();
try
{
OracleDataAdapter vOracleDataAdapter = CreateOracleDataAdapter(vSql);

vOracleDataAdapter.Fill(vDataTable);
vOracleDataAdapter.Dispose();
}
catch
{
return null;
}

return vDataTable;
}

public DataSet ExcuteSqlWithDataSet(string vSql, string vTableName)
{
OracleDataAdapter vOracleDataAdapter = CreateOracleDataAdapter(vSql);
DataSet vDataSet = new DataSet();
vOracleDataAdapter.Fill(vDataSet, vTableName);
vOracleDataAdapter.Dispose();
return vDataSet;
}

private OracleConnection OpenOraDBConn()
{
string vConnStr = ConfigurationManager.AppSettings["CONNSTRING"].ToString();
OracleConnection vOracleConnection = new OracleConnection(vConnStr);
if (vOracleConnection.State != ConnectionState.Open)
{
vOracleConnection.Open();
}
return vOracleConnection;
}
private void CloseOraDBConn(OracleConnection vOracleConnection)
{
if (vOracleConnection.State == ConnectionState.Open)
{
vOracleConnection.Close();
}
}


private OracleDataAdapter CreateOracleDataAdapter(string vSql)
{
OracleConnection vOracleConnection = OpenOraDBConn();
OracleDataAdapter vOracleDataAdapter = new OracleDataAdapter(vSql, vOracleConnection);
CloseOraDBConn(vOracleConnection);
return vOracleDataAdapter;
}

public string GetDateTimeNow()
{
return System.DateTime.Now.ToString("u").Replace("Z", "").Replace("z", "");
}
}
...全文
35 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
b13951845 2009-10-05
  • 打赏
  • 举报
回复
mark
YuccaWei 2009-09-29
  • 打赏
  • 举报
回复
不错
jscn123789abc 2009-07-01
  • 打赏
  • 举报
回复
ding....
mail_ricklee 2009-07-01
  • 打赏
  • 举报
回复
你可以参考参考下IBatisNet里面Oracle的调用方式
FortuneBase里面有直接QueryForOracleDataTable等方法
参考地址www.cnblogs.com/mail-ricklee
jscn123789abc 2009-07-01
  • 打赏
  • 举报
回复
ding...
aaa_zzz_333 2009-07-01
  • 打赏
  • 举报
回复
ding...
aaa_zzz_000 2009-06-30
  • 打赏
  • 举报
回复
ding...

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧