zoukankan      html  css  js  c++  java
  • SQL Server子查询填充DataSet时报500内部错误的解决办法

    运行环境为Visual Studio 2010,数据库为SQL Server 2008。

    执行下面SQL语句

    SELECT SubsiteId, SubsiteTitle, count(CollectionID) CollectionNumber,count(LName) PlantNumber
       FROM (SELECT DISTINCT SubsiteId, SubsiteTitle, CollectionID, LName, CName
                  FROM Cumplag_Garden_Plants where lname='Agave sisalana') 
    group by SubsiteId, SubsiteTitle

    在企业管理器中运行正常,可以查询到结果,但是放在程序中却始终提示500内部错误。以下是C#代码:

    1 SqlConnection conn = new SqlConnection(strConn);
    2 SqlCommand cmd = new SqlCommand(sql, conn);
    3 conn.Open();
    4 SqlDataAdapter sda = new SqlDataAdapter(cmd);
    5 sda.Fill(ds, "ds");  //这里出错
    6 conn.Close();

    对代码try catch也捕获不到异常。


    解决方法:只要将内部子查询添加一个别名即可。

    SELECT  q.SubsiteId, q.SubsiteTitle, count(q.CollectionID) CollectionNumber,count(q.LName) PlantNumber
        FROM (SELECT DISTINCT SubsiteId, SubsiteTitle, CollectionID, LName, CName
                 FROM Cumplag_Garden_Plants where lname='Agave sisalana') q
    group by SubsiteId, SubsiteTitle
  • 相关阅读:
    记录一下周末作业
    超链接的 使用和按钮添加
    学习了网页设置上传视频
    Java-JDK安装及环境变量配置
    java-库存管理案例
    java-DateFormat
    java-正则表达式练习
    java-StringBuffer类
    java面对对象-匿名对象
    java static和final关键字
  • 原文地址:https://www.cnblogs.com/yaotome/p/7124025.html
Copyright © 2011-2022 走看看