【发布时间】:2020-06-03 10:32:41
【问题描述】:
我有两个 SQL 查询:
SqlCommand cmdone = new SqlCommand("update HardwareDetails Set Transstat = @Transstat where AssetNo = @AssetNo", con);
cmdone.Parameters.AddWithValue(@"Transstat", "Raised");
cmdone.Parameters.AddWithValue(@"AssetNo", txtAsset.Text);
cmdone.ExecuteNonQuery();
cmdone.Dispose();
还有:
SqlCommand cmd = new SqlCommand("Insert into TransferRequest(FrmName,FrmEmpId,ToName) values (@FrmName,@FrmEmpId,@ToName", con);
cmd.Parameters.AddWithValue(@"FrmName", txtfrm.Text);
cmd.Parameters.AddWithValue(@"FrmEmpId", Global.transferorid);
cmd.Parameters.AddWithValue(@"ToName", txtName.Text);
cmd.ExecuteNonQuery();
cmd.Dispose();
有没有办法将它们组合成一个查询?
【问题讨论】:
-
你为什么要做那样的傻事?
-
您的
cmd也应该在using块中。如果您的查询错误,您将泄漏内存 -
@Liam 将多个 SQL 语句组合成一个命令有什么可笑的?
-
它有什么好处?它无缘无故地破坏了单一责任原则
-
这充其量只是微优化。同样,这不是打破 SRP 的好理由。如果您使用的是 56k 调制解调器,那可能是个问题,但现在是 2020 年......
标签: c# asp.net sql-server asp.net-core