下面是我写的一个连接数据库的类,dataquery()是查询方法,dataexecute()是数据操作方法,大家看看,还有什么地方需要优化的,操作完后除了Connection对象需要关闭,还有没有其他对像要关闭?
public class Data
{
System.Data.OleDb.OleDbConnection objcon=null;
public Data(string strconnection)
{
objcon=new OleDbConnection(strconnection);
}
public DataSet dataquery(string strsql)
{
try
{ System.Data.OleDb.OleDbDataAdapter objda=new OleDbDataAdapter(strsql,objcon);
System.Data.DataSet objds=new DataSet();
objda.Fill(objds);
return objds;
}
catch(System.Data.OleDb.OleDbException ex)
{
ex.Message.ToString();
throw ex;
}
finally
{
objcon.Close();
}
}
public void dataexecute(string strsql)
{
try
{
System.Data.OleDb.OleDbCommand objcmd=new OleDbCommand(strsql,objcon);
objcon.Open();
objcmd.ExecuteNonQuery();
}
catch(System.Data.OleDb.OleDbException ex)
{
ex.Message.ToString();
throw ex;
}
finally
{
objcon.Close();
}
}
}
public class Data
{
System.Data.OleDb.OleDbConnection objcon=null;
public Data(string strconnection)
{
objcon=new OleDbConnection(strconnection);
}
public DataSet dataquery(string strsql)
{
try
{ System.Data.OleDb.OleDbDataAdapter objda=new OleDbDataAdapter(strsql,objcon);
System.Data.DataSet objds=new DataSet();
objda.Fill(objds);
return objds;
}
catch(System.Data.OleDb.OleDbException ex)
{
ex.Message.ToString();
throw ex;
}
finally
{
objcon.Close();
}
}
public void dataexecute(string strsql)
{
try
{
System.Data.OleDb.OleDbCommand objcmd=new OleDbCommand(strsql,objcon);
objcon.Open();
objcmd.ExecuteNonQuery();
}
catch(System.Data.OleDb.OleDbException ex)
{
ex.Message.ToString();
throw ex;
}
finally
{
objcon.Close();
}
}
}
解决方案 »
- 如"http://www.ncss.org.cn/zyghds/xt/zc.jsp"的效果,aspx怎么做?
- asp.net用rdlc打印,如何统计打印次数(预览不算在内)
- 急啊,很简单啊,怎么老是超范围啊?
- .net中的网上支付???
- [馨郁星愿]放分放分!!技术求助
- 在DataGrid中,如何通过模板列的checkbox得到对应行里的数据?
- ASP.NET(VB.NET)+存储过程的问题(另一贴结分)
- .net 2.0忠 word引用问题
- 提问:如何 用JS 获取当前行的值?DEV AspxGridview
- 怎样将图片写入ACCESS数据库,然后在将它读出来?
- 请教数据层设计的几个简单问题(相信大家都遇到过!)
- asp.net(VB)调用一个vb写的类库中的某个函数,并且通过ByRef方式,从参数里返回值,结果返回为空。
DataReader 除了Connection还要关闭Reader建议使用using语句
{
DataReader1.Close();
oCmd.Dispose();
oDap.Dispose();
objcon.Close();
....null....
}