public DataSet DataSetPage(string sqlcomm)
        {
            DataSet ds = new DataSet();
            SqlDataAdapter Sda = new SqlDataAdapter(sqlcomm, con);
            Sda.Fill(ds);
            return ds;
        }
当命令执行到  Sda.Fill(ds);时提示 列名IsDelete 不明确  ,把sqlcomm 里的sql 命令粘贴到sql中能执行,数据库里确实有这个字段。则么回事啊 等待高手解答!

解决方案 »

  1.   

    你用join查询了吧,然后你两个表都有IsDelete字段,然后你没指定是哪个表达这个字段,然后就报这个错了
      

  2.   

    sql 语句写错了 复制过来。 帮你看看
      

  3.   

    大哥,能不能把SQL帖出来看看啊,不明确就是有重名的,as a, as a等情况,或关健字,等等,本来菜鸟,整社区都知道的,自己试试吧!最好帖出SQL
      

  4.   

    提示 列明不正确, 明显SQL语句有问题啊~~~~
      

  5.   

    SELECT a.NewsID, a.AdminID, a.CreateTime, a.NewsTitle, a.NewsText, a.IsImportant, a.IsDelete, a.Flag, a.Audit,b.User_name FROM  Tb_news a left join Tb_user b on a.AdminID=b.Userid WHERE 1=1 and AdminID=1 and IsDelete='True'  order by CreateTime desc这条命令在sqlserver 里能执行成功
      

  6.   

    嗯,应该是你的sql语句中引用了至少两张表,而这些表中具有同个字段,你引用的时候要带表名.字段名,要输出前台显示的话,最好帮他重命名下
      

  7.   

    and IsDelete='True' order by  这里没指定哪个表
      

  8.   

    try:
    SELECT a.NewsID, a.AdminID, a.CreateTime, a.NewsTitle, a.NewsText, a.IsImportant, a.IsDelete, a.Flag, a.Audit,b.User_name FROM Tb_news a left join Tb_user b on a.AdminID=b.Userid WHERE a.AdminID=1 and a.IsDelete='True' order by a.CreateTime desc
      

  9.   

    a.IsDelete='True'
    是不是2个表里面,都有IsDelete字段?
      

  10.   

     WHERE 1=1 and AdminID=1 and IsDelete='True' order by CreateTime desc
    ------------------红色字段前增加前缀 如 你已经 表a  或表b
      

  11.   

    两个表中都有IsDelete这一列,因而重复了。无法判断该列属于哪张表。
    在IsDelete这一列前面加上表名就可以了!