首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

这段代码有什么有关问题,为什么GridView不能显示呢

2012-04-27 
这段代码有什么问题,为什么GridView不能显示呢?入题:注(数据库中有数据)代码如下:string gr DropDownLis

这段代码有什么问题,为什么GridView不能显示呢?
入题:注(数据库中有数据)代码如下:
string gr = DropDownList1.SelectedValue.ToString();
   
  //先判断查询范围,然后依据范围来检索文章
  if (txtBoxChaxun.Text.Trim() != "")
  {


  string getChaXunVale = DropDownList1.SelectedValue.ToString();
  string sqlXuanZ = txtBoxChaxun.Text;
  string sqlChaXun = "";
  string sqlCheck = "select artid, artTitle, creatTime, plante, creatAuthor, passWord, author from articleControl_Table where '" + sqlChaXun + "' like '"+sqlXuanZ+"'+'%' ";


  switch (gr)
  {
  case "标题":
  sqlChaXun = "artTitle";

  break;
  case "作者":
  sqlChaXun = "creatAuthor";
  break;
  case "时间":
  sqlChaXun = "creatTime";
   
  break;
  case "板块":
  sqlChaXun = "plante";
  break;
  case "火热":
  break;
  }

  SqlConnection getConn = connectSqlData();
  getConn.Open();
  string sqlCommand = sqlCheck;
  SqlDataAdapter sq = new SqlDataAdapter(sqlCommand, getConn);
  DataSet myds = new DataSet();
  sq.Fill(myds, "articleControl_Table");

  DataView myView = myds.Tables["articleControl_Table"].DefaultView;
  string sort = (string)ViewState["SortOrder"] + " " + (string)ViewState["OrderDire"];
  myView.Sort = sort;

  gV_ArticleCotrol.DataSource = myds.Tables["articleControl_Table"];
  gV_ArticleCotrol.DataBind();
  getConn.Close();
   
  //此处是否还需要重新绑定数据源呢?

  // Response.Write(sqlChaXun);//这里最后显示是我要的结果,这两个变量被赋予了正确的值
  // Response.Write(sqlXuanZ);

  }
  else
  {
  Response.Write("<script>alert('亲,您的查询内容为空!')</script>");
  }

[解决办法]
debug一下就好了 

1,可能没有数据
2,gridview设了不自动生成列


另外,觉得你不会做2
myds.Tables["articleControl_Table"];好像不能通过名字取到表
所以你用myds.Tables[0]就好了
[解决办法]
select artid, artTitle, creatTime, plante, creatAuthor, passWord, author from articleControl_Table where 'creatAuthor' like 'abc'%'

你自己debug一下吧 ,
sql写错了

where creatAuthor like N'abc%'

N写不写都无所谓
[解决办法]
把switch整体放在上面的 
//先判断查询范围,然后依据范围来检索文章
if (txtBoxChaxun.Text.Trim() != "")
{
下面就可以了
[解决办法]
sq.Fill(myds, "articleControl_Table")之后断点一下,看下是否有数据。
[解决办法]
组合SQL有问题,列名不带引号
改成这样:
"select artid, artTitle, creatTime, plante, creatAuthor, passWord, author from articleControl_Table where " + sqlChaXun + " like '" + sqlXuanZ + "%'";



你可以获得sqlCommand的值在数据库中执行下

[解决办法]
你的SQL语句有问题
[解决办法]
sql语句的问题吧,这样写:

SQL code
string sqlCheck = "select artid, artTitle, creatTime, plante, creatAuthor, passWord, author from articleControl_Table where " + sqlChaXun + " like '"+ sqlXuanZ +" %' ";
[解决办法]
应该是空格的原因,你在where后面加空格 like前后加空格试试,注意一定是这种格式:
比如 select * from table where 字段 like '***%'
如果黏在一起了 肯定会报语法错误 如:select * from articleControl_Table where字段like '***%'
[解决办法]
将程序中生成sql 语句放在 数据库查询分析中跑一下,看有无问题呀!
[解决办法]
sql语句错误..在like附近...
[解决办法]
第一语句顺序,第二SQL语句
[解决办法]
少一个百分号

热点排行