【问题标题】:Select SQL using c# error can someone guide this oneSelect SQL using c# error 有人可以指导一下吗
【发布时间】:2015-02-24 03:55:13
【问题描述】:

我错过了什么?
我有错误:

用户代码未处理Sqlexception

SqlConnection con = new SqlConnection(MyConnectionString);
SqlCommand objCmd;
con.Open();
SqlDataReader dtReader;
String strSQL;
strSQL = "SELECT * FROM " + DropDownList1.SelectedValue + "'";

objCmd = new SqlCommand(strSQL, con);
dtReader = objCmd.ExecuteReader();

//*** BindData to GridView ***//
GridView3.DataSource = dtReader;
GridView3.DataBind();

dtReader.Close();
dtReader = null; 

【问题讨论】:

  • 什么是错误并从您的查询中删除错字“'”。
  • dtReader = objCmd.ExecuteReader();错误这一行
  • 提示:见SQL Injection
  • 有什么异常,不在哪一行。从查询中删除 ' 符号。
  • 您的代码工作正常,您的查询有问题。去掉 strSQL = "SELECT * FROM "+DropDownList1.SelectedValue+"'" 末尾的“'”;

标签: c# sql-server sqldatareader


【解决方案1】:

试试这个,

  strSQL = "SELECT * FROM " + DropDownList1.SelectedValue;

即,只需从查询字符串中删除 '。

然后在最后添加如下代码。

GridView3.DataSource = dtReader;
GridView3.DataSourceID = String.Empty;
GridView3.DataBind(); 

【讨论】:

  • 我在 gridview3.databind 处遇到错误错误 MSG is invalidOperationException is unhandled by user code
  • @KaneSmithSillapasit DropDownList 控件中的值是什么?
  • 表字符串值的名称
  • 感谢它工作 GridView3.DataSource = dtReader; GridView3.DataSourceID = String.Empty; GridView3.DataBind();
【解决方案2】:

这段代码现在可以工作了

  SqlConnection con = new SqlConnection(MyConnectionString);
SqlCommand objCmd;
con.Open();
SqlDataReader dtReader;
String strSQL;
strSQL = "SELECT * FROM " + DropDownList1.SelectedValue ;

objCmd = new SqlCommand(strSQL, con);
dtReader = objCmd.ExecuteReader();

GridView3.DataSource = dtReader;
GridView3.DataSourceID = String.Empty;
GridView3.DataBind(); 

dtReader.Close();
dtReader = null; 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-05
    • 2011-03-21
    相关资源
    最近更新 更多