c#关闭连接SQL数据库(二)

关闭连接的两种方法

Close方法和Dispose方法。
相同点:都是关闭对数据库的连接
不同点:Close方法不会清理连接占用的资源,再次使用Open方法可以直接打开,Dispose方法会清理连接占用的资源,再次连接需要重新初始化才可以打开。

程序演示

c#关闭连接SQL数据库(二)_第1张图片
窗体是我的上个程序的窗体然后修改了一下,增加了两个button,一个用来测试使用Close方法关闭数据库并且用Open方法重新连接,一个测试Dispose方法关闭数据库并且用Open方法重新连接。两个方法的测试结果都会在下面的文本框中显示出来

演示效果

使用Close方法

c#关闭连接SQL数据库(二)_第2张图片

使用Dispose方法

c#关闭连接SQL数据库(二)_第3张图片

代码展示

这里只展示两个button的代码,之前的代码请移步c#连接SQL数据库

private void button2_Click(object sender, EventArgs e)//Close方法的button
        {
     
            string str = "";
            try
            {
     
                conn.Close();
                if (conn.State == ConnectionState.Closed)
                    str = "数据库已关闭\n";
                listBox1.Items.Add(str);
                conn.Open();
                if (conn.State == ConnectionState.Open)
                    str = "数据库已连接";
                listBox1.Items.Add(str);
            }
            
            catch (Exception ex)
            {
     
                listBox1.Items.Add(ex.Message);//如果捕获到异常把异常信息显示到文本框中
            }
        }

        private void button3_Click(object sender, EventArgs e)//Dispose方法的button
        {
     
            string str = "";
            try
            {
     
                conn.Dispose();
                if (conn.State == ConnectionState.Closed)
                    str = "数据库已关闭\n";
                listBox1.Items.Add(str);
                conn.Open();
                if (conn.State == ConnectionState.Open)
                    str = "数据库已连接";
                listBox1.Items.Add(str);
            }

            catch (Exception ex)
            {
     
                listBox1.Items.Add(ex.Message);
            }
        }

你可能感兴趣的:(c#,c#,数据库,sql)