我有一个方法,它直接在.CS文件中包含一个非常大的SQL查询。推荐的重构方法是什么?
答案 0 :(得分:2)
您可以将大型复杂SQL查询放入SQL视图或存储过程中,并在代码中使用它。
答案 1 :(得分:1)
您应该使用存储过程
string commandText = "SP_Your_Sp_Name";
using (SqlConnection objSqlConnection = Connection)
{
using (SqlCommand cmd = new SqlCommand(commandText, objSqlConnection))
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new SqlParameter("@Parameter_Name", value));
if (cmd.Connection.State != ConnectionState.Open)
{
cmd.Connection.Open();
}
result = (string)cmd.ExecuteScalar();
}
}
答案 2 :(得分:0)
使用存储过程。 在这种情况下,当执行计划存储在缓存中时,查询执行会更快。