试图提高我的 C# 到 SQL 技能...目前我正在使用这段代码从我们的应用程序服务器中提取数据。我有两个不同的 DBA 告诉我另外两种写这个的方法,只是想弄清楚这是否应该改进或改变。如果是这样,我真的很感激一些例子。
仅供参考:此代码...
db.con(user.Authority)
...本质上是一个“新的 sqlconnection”代码。
DataTable dtInfo = new DataTable("SomeInfo");
using (SqlConnection con = db.con(user.Authority))
{
string command = "SOME SQL STATEMENT;";
using (SqlCommand cmd = new SqlCommand(command,con))
{
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@Param", sqlDbType).Value = Param;
con.Open();
cmd.ExecuteNonQuery();
**********
*** OR ***
**********
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@Param", sqlDbType).Value = Param;
using (SqlDataAdapter da = new SqlDataAdapter(cmd))
{
da.Fill(dtInfo );
}
}
}
那么,如果我理解所提供的信息,这是我最好的路线吗?
using (SqlConnection con = db.con(user.Authority))
{
string command = "SELECT [TBL_EMPLOYEE].[ACTIVE_DIRECTORY] FROM [TBL_EMPLOYEE];";
using (SqlCommand cmd = new SqlCommand(command, con))
{
con.Open();
using (SqlDataReader reader = cmd.ExecuteReader())
{
while (reader.Read())
{
MessageBox.Show(reader["ACTIVE_DIRECTORY"].ToString());
}
}
}
最后一件事......这应该可以防止需要
cmd.Dispose();
etc...