读书人

帮忙调试下一段代码解决方案

发布时间: 2012-01-08 22:48:50 作者: rapoo

帮忙调试下一段代码

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"];
}

读书人网 >C#

热点推荐