仿petshop的一个数据访问层的类

王朝asp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

using System;

using System.Data;

using System.Data.OleDb;

using System.Configuration;

namespace yueying.Components

{

/// <summary>

/// DBClass 的摘要说明。

/// </summary>

public class DBClass

{

protected static string strConn = ConfigurationSettings.AppSettings["strConn"];

public DBClass()

{

//

// TODO: 在此处添加构造函数逻辑

//

}

//功能:执行sql语句,返回bool

internal bool ExecuteSql(string strSQL)

{

bool success=false;

OleDbConnection conn = new OleDbConnection(strConn);

OleDbCommand myCmd = new OleDbCommand(strSQL,conn);

try

{

conn.Open();

myCmd.ExecuteNonQuery();

success=true;

}

catch(System.Data.OleDb.OleDbException e)

{

throw new Exception(e.Message);

}

finally

{

myCmd.Dispose();

conn.Close();

}

return success;

}

//功能:执行sql语句,如果有记录的话返回1,否则返回0

internal int ExecuteSqlDr(string strSQL)

{

OleDbConnection myCn = new OleDbConnection(strConn);

OleDbCommand myCmd = new OleDbCommand(strSQL,myCn);

try

{

myCn.Open();

OleDbDataReader myDr = myCmd.ExecuteReader();

if(myDr.Read())

{

return 1;

}

else

{

return 0;

}

}

catch(System.Data.OleDb.OleDbException e)

{

throw new Exception(e.Message);

}

finally

{

myCmd.Dispose();

myCn.Close();

}

}

//功能:执行SQL语句,返回DataSet

internal DataSet ExecuteSqlDs(string strSQL ,string tablename)

{

OleDbConnection myCn = new OleDbConnection(strConn);

try

{

myCn.Open();

OleDbDataAdapter myDa = new OleDbDataAdapter(strSQL,myCn);

DataSet ds = new DataSet();

myDa.Fill(ds,tablename);

return ds;

}

catch(System.Data.OleDb.OleDbException e)

{

throw new Exception(e.Message);

}

finally

{

myCn.Close();

}

}

//执行SQL语句,返回DataReader

internal OleDbDataReader ExecuteSqlDataReader(string strSQL)

{

OleDbConnection myCn = new OleDbConnection(strConn);

OleDbCommand myCmd = new OleDbCommand(strSQL,myCn);

try

{

myCn.Open();

return myCmd.ExecuteReader(CommandBehavior.CloseConnection);

}

catch

{

myCn.Close();

throw;

}

}

//执行SQL语句,返回执行cmd的Scalar方法的值

internal int ExecuteSqlScalar(string strSQL)

{

OleDbConnection myCn = new OleDbConnection(strConn);

OleDbCommand myCmd = new OleDbCommand(strSQL,myCn);

try

{

myCn.Open();

object r = myCmd.ExecuteScalar();

if(Object.Equals(r,null))

{

throw new Exception("value unavailable!");

}

else

{

return (int)r;

}

}

catch(System.Data.OleDb.OleDbException e)

{

throw new Exception(e.Message);

}

finally

{

myCmd.Dispose();

myCn.Close();

}

}

internal object ExecuteSql4ValueEx(string strSQL)

{

OleDbConnection myCn = new OleDbConnection(strConn);

OleDbCommand myCmd = new OleDbCommand(strSQL,myCn);

try

{

myCn.Open();

object r = myCmd.ExecuteScalar();

if(Object.Equals(r,null))

{

throw new Exception("object unavailable!");

}

else

{

return r;

}

}

catch(System.Data.OleDb.OleDbException e)

{

throw new Exception(e.Message);

}

finally

{

myCmd.Dispose();

myCn.Close();

}

}

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航