日期:2014-05-18  浏览次数:20442 次

数据库打开关闭问题,
我要写一个aspnetd程序,需要经常对数据库进行读写操作,打开的方式是使用这种通用的模板好呢?
 public DataTable getDataTable(string strSQL)  
  {  
  try  
  {  
  打开数据库,操作  
  }  
  catch  
  {  
  异常  
   
  }  
  finally  
  {  
  关闭数据库  
  }  
  }  
   
还是使用把打开关闭都放在Global.asax里面,程序启动时打开连接,退出时关闭连接。
  void Application_Start(object sender, EventArgs e) 
  {
  Connect.Con.Open();

  // 在应用程序启动时运行的代码

  }
   
  void Application_End(object sender, EventArgs e) 
  {
  Connect.Con.Close();
  // 在应用程序关闭时运行的代码

  }
谢谢各位了!!!

------解决方案--------------------
把打开关闭都放在Global.asax里面

LZ 也真敢想,你能保证每个页面都需要不停的操作数据库吗?浪费资源不说而且效率极低,因为每个页面都回占用资源,而且还要保持连接,用过的东西也不能即时得到回收


只要在需要操作数据的时候打开连接,用完了即时关闭即可,不用担心打开关闭连接会影响效率,因为aspnet程序是通过连接池访问数据库,不是直接访问的
------解决方案--------------------
同意楼上的观点,而且如果中间某个操作,导致数据库连接异常。那就挂了,
还有在使用datareader的时候,必须每一个连接使用一个datareader。
所以,我认为方案一,比较好