SqlCommand需要using关闭吗?

a151720786 2009-10-14 07:48:34
using (SqlConnection conn = new SqlConnection(connstr))
{
conn.Open();
using (SqlCommand cmd = new SqlCommand(sql, conn))
{
。。。。
}
}

问题1、SqlConnection已使用using,SqlCommand还需要using?
问题2\、SqlCommand如果需要using,那加入using后还需要SqlCommand.Parameters.Clear();吗?
...全文
694 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
SqlCmd.Parameters.Clear();
SqlCmd.Dispose();
chen_ya_ping 2009-10-14
  • 打赏
  • 举报
回复
我觉得一个using就可以了,里面的资源都是会释放掉的
yu201026 2009-10-14
  • 打赏
  • 举报
回复
今天刚接触到数据库,学习了……
SQL77 2009-10-14
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 xray2005 的回复:]
一般
using(SqlConnection ..
{

}

就可以.SqlCommand一般情况没必要再using(...)了.


BTW,楼上的.你的回答的确不正确.using不仅仅只是用个名空间,还有其他的用途.
[/Quote]
嗯,呵呵
SQL77 2009-10-14
  • 打赏
  • 举报
回复
你是使用USING的,不用关闭
xray2005 2009-10-14
  • 打赏
  • 举报
回复
一般
using(SqlConnection ..
{

}

就可以.SqlCommand一般情况没必要再using(...)了.


BTW,楼上的.你的回答的确不正确.using不仅仅只是用个名空间,还有其他的用途.
mzjmicrosoft 2009-10-14
  • 打赏
  • 举报
回复
   SqlCommand cmd = new SqlCommand();

using (SqlConnection conn = new SqlConnection(connectionString))
{
//通过PrePareCommand方法将参数逐个加入到SqlCommand的参数集合中
PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
int val = cmd.ExecuteNonQuery();

//清空SqlCommand中的参数列表
cmd.Parameters.Clear();
return val;
}
a151720786 2009-10-14
  • 打赏
  • 举报
回复
看过不少数据层类,SqlCommand用using的也很多,所以问一下
a76477140 2009-10-14
  • 打赏
  • 举报
回复
不需要把 只要在SQLCONNECTION里面用了 using 后面会自动。
zq32206124 2009-10-14
  • 打赏
  • 举报
回复
难道我的回答不正确??
capucivar 2009-10-14
  • 打赏
  • 举报
回复
SqlCommand如果需要using,那加入using后不需要SqlCommand.Parameters.Clear()
只要出了使用了using的方法体花括弧之后,方法体的对象会自动被释放掉的。
yingyuebingya 2009-10-14
  • 打赏
  • 举报
回复
private static void ReadOrderData(string connectionString)
{
string queryString =
"SELECT OrderID, CustomerID FROM dbo.Orders;";
using (SqlConnection connection = new SqlConnection(
connectionString))
{
SqlCommand command = new SqlCommand(
queryString, connection);
connection.Open();
SqlDataReader reader = command.ExecuteReader();
try
{
while (reader.Read())
{
Console.WriteLine(String.Format("{0}, {1}",
reader[0], reader[1]));
}
}
finally
{
// Always call Close when done reading.
reader.Close();
}
}
}
来自:http://msdn.microsoft.com/zh-cn/library/system.data.sqlclient.sqlcommand.aspx
颤菊大师 2009-10-14
  • 打赏
  • 举报
回复
外层,可以。
但SqlCommand就不用了。
期待他人回答。
Hujinlin_1990 2009-10-14
  • 打赏
  • 举报
回复
有点多余啊。。。
andrewsway 2009-10-14
  • 打赏
  • 举报
回复
1、不需要
2、……
zq32206124 2009-10-14
  • 打赏
  • 举报
回复
汗~~这是什么东东啊~~第一次见过这么用的
在文件开头加 using System.Data.SqlClient就可以了

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧