using(SqlConnection connection=new SqlConnection(connectionString))

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了using(SqlConnection connection=new SqlConnection(connectionString))相关的知识,希望对你有一定的参考价值。

使用该语句的具体作用?
其与单独的SqlConnection connection=new SqlConnection(connectionString);语句有什么区别?

using()

将自动释放()中对象占用的资源,就不用手动connection.Close();了

如果单独的SqlConnection connection=new SqlConnection(connectionString);

在处理完成了之后,还必须手动connection.Close();

其他的就没区别了。
参考技术A using语句,定义一个范围,在范围结束时处理对象。(不过该对象必须实现了IDisposable接口)。其功能和try-Finally完全相同。

这里SqlConnection对象默认实现了IDisposable接口,如果是自己写的类,那就要自己手动来实现IDisposable接口
参考技术B 会在using 语句块结束后 自动释放 sqlconnection 对象占用的资源。

closs()方法 是关闭数据库的连接。

并不是所有对象都能在using()中声明,
在using() 中声明的对象 必须实现IDisposable这个接口 ,这样系统才会调用析构方法
参考技术C 楼主
你这个问题
应该是没有添加引用吧?
你再顶部添加using
System.Data和using
System.Data.SqlClient;试试
你using
(SqlConnection
connection
=
new
SqlConnection(connectionString))这个地方的using,作用是即时释放资源,括号结束后(或者出现异常报错),using括号内实例化的对象都会执行Dispose方法销毁。

使用SqlCommand 执行SQL语句

string sConnectionString = @"server=(local)\SQLEXPRESS;database=Forum;Trusted_Connection=True";

using (SqlConnection conn = new SqlConnection(sConnectionString))
{
    conn.Open();
    using (SqlCommand cmd = new SqlCommand())
    {
        // 绑定有效的数据库连接
        cmd.Connection = conn;
        // 定义操作1的SQL语句
        cmd.CommandText = "Insert into tbClass (ClassName) values (‘网页设计‘)";
        // 完成操作1并输出相应的记录数
        Response.Write(string.Format("在tbClass中插入了{0}条记录<br>", cmd.ExecuteNonQuery()));
        // 定义操作2的SQL语句
        cmd.CommandText = "Select ClassID from tbClass where ClassName=‘网页设计‘";
        // 完成操作2
        string sClassID = cmd.ExecuteScalar().ToString();
        // 输出操作2的结果
        Response.Write(string.Format("ClassID为{0}<br>", sClassID));
        // 定义操作3的SQL语句
        cmd.CommandText = string.Format("Insert into tbBoard (BoardName,BoardClassID) values (‘PHOTOSHOP‘,‘{0}‘);Insert into tbBoard (BoardName,BoardClassID) values (‘FIREWORKS‘,‘{0}‘)", sClassID);
        // 完成操作3并输出相应的记录数
        Response.Write(string.Format("在tbBoard中插入了{0}条记录<br>", cmd.ExecuteNonQuery()));
        // 定义操作4的SQL语句
        cmd.CommandText = "Update tbBoard set BoardName=‘PS技术‘ where BoardName=‘PHOTOSHOP‘";
        // 完成操作4并输出相应的记录数
        Response.Write(string.Format("在tbBoard中修改了{0}条记录<br>", cmd.ExecuteNonQuery()));
        // 定义操作5的SQL语句
        cmd.CommandText = string.Format("Delete from tbBoard where BoardClassID=‘{0}‘", sClassID);
        // 完成操作5并输出相应的记录数
        Response.Write(string.Format("在tbBoard中删除了{0}条记录<br>", cmd.ExecuteNonQuery()));
        // 定义操作6的SQL语句
        cmd.CommandText = string.Format("Delete from tbClass where ClassID=‘{0}‘", sClassID);
        // 完成操作6并输出相应的记录数
        Response.Write(string.Format("在tbClass中删除了{0}条记录<br>", cmd.ExecuteNonQuery()));
    }
}

以上是关于using(SqlConnection connection=new SqlConnection(connectionString))的主要内容,如果未能解决你的问题,请参考以下文章

求大侠帮忙,好多次调试都在SqlConnection conn = new SqlConnection(connStr);出现用户代码未处理

using(SqlConnection connection=new SqlConnection(connectionString))

判断SqlConnection连接是否关闭

SqlConnection.Close() 在 using 语句中

如何使用 SqlConnection.GetSchema 获取同义词信息?

c#啥时候有必要用using(代码段)?