帮忙调试下一段代码解决方案
帮忙调试下一段代码HTML codeSqlConnection conn new SqlConnection(Data Source110.136.48.24Initia
帮忙调试下一段代码
HTML code SqlConnection conn = new SqlConnection("Data Source=110.136.48.24;Initial Catalog=hope_loan;Integrated Security=True"); conn.Open(); string sql; if (Request.QueryString["emp_id"]== "") { sql = "select * from [hope_empinfo] where hope_emp_name='" + Session["hope_user_name"] + "'"; } else { sql = "select * from [hope_empinfo] where hope_emp_id=" + Request.QueryString["emp_id"]; } // string sql = "select * from [hope_empinfo] where hope_emp_name='admin'"; SqlDataAdapter ada = new SqlDataAdapter(sql, conn); DataSet ds = new DataSet(); ada.Fill(ds); DetailsView1.DataSource = ds; DetailsView1.DataBind();
错误的提示是:
第 1 行: '=' 附近有语法错误。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Data.SqlClient.SqlException: 第 1 行: '=' 附近有语法错误。
源错误:
行 33: SqlDataAdapter ada = new SqlDataAdapter(sql, conn);
行 34: DataSet ds = new DataSet();
行 35: ada.Fill(ds);
行 36: DetailsView1.DataSource = ds;
行 37: DetailsView1.DataBind();
各位帮帮忙啊!在线等
[解决办法]这段代码本身没有语法错误,但在Request.QueryString["emp_id"]==null的时候拼接的SQL语句会有语法错误
可以改为
if (Request.QueryString["emp_id"]==null || Request.QueryString["emp_id"]== "")
{
sql = "select * from [hope_empinfo] where hope_emp_name='" + Session["hope_user_name"] + "'";
}
else
{
sql = "select * from [hope_empinfo] where hope_emp_id=" + Request.QueryString["emp_id"];
}