您的位置:首页 > 数据库

c#自动关闭数据库连接

2012-11-16 17:18 267 查看


c#自动关闭数据库连接

第一种形式;     

    public       DataTable       getDataTable(string       strSQL)       

    {       

            try       

                {       

                        open();       //打开数据库连接     

                        数据库,操作       

                }       

            catch       

                {       

                            异常       

        

                }       

                finally       

                {           

                          if(Conn.state=ConncetionState.open)       

                              {       

                                  Close();       //关闭数据库连接 

                              }       

                }       

    }       

  第二种形式:  自动关闭数据库

public       DataTable       getDataTable(string       strSQL,string   connString)     

  { 

    DataTable   dt; 

    try       

    {       

          using   (SqlConnection   conn   =   new   SqlConnection(connString))   

        { 

                //数据库操作; 

                return   dt; 

        } 

    } 

    catch       

    {       

        异常       

    }       



其实之所以ms把ado.net设计成inmemory   database就是不希望connection总是连接的状态,有可能的话会尽快收回连结池,所以频繁的开关connection是ado.net乐意看到的。而且在带宽急速提高的今天这也是有效分担服务器负载的好方法。 

———————————————————————————————————————— 

不对。这个说法没有区分逻辑连接还是物理连接。实际上仅对逻辑连接才需要尽快关闭,对物理连接需要尽量推迟关闭并且尽量复用。 

如果你使用一种数据库引擎的DBConnection的子类,它不自动支持连接池功能,你就不应该频繁开关connection,给你的编程建议与SqlCnnection绝对完全想反。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C# 数据库 服务器
相关文章推荐