科讯系统今天碰到个问题Microsoft OLE DB Provider for SQL Server 错误 '80040e14'发生算术溢出。/admin/Include/Label_Main.asp,行 445 
455行:LabelRS.Open FolderSql & " UNION all Select ID,LabelName,Description,LabelFlag,OrderID from [KS_Label] " & Param, Conn, 1, 1 输出sql语句 是:
  SELECT ID,FolderName,Description,OrderID as LabelFlag,OrderID FROM [KS_LabelFolder] where FolderType=5 And ParentID='0' UNION all Select ID,LabelName,Description,LabelFlag,OrderID from [KS_Label] Where LabelType=5 AND FolderID='0' ORDER BY OrderID 去掉UNION 没有任何问题,加上UNION 就出现,这是怎么回事,哪位高手指点下啊。
  

解决方案 »

  1.   

    不会啊,都存在啊,数据库是sqlserver 2000
      

  2.   

     UNION all Select ID,LabelName,Description,LabelFlag,OrderID from [KS_Label]  这句的字段有问题 
    1.在企业管理器中右键单击该数据库。选择属性。
    2.选择选项选项卡。
    3.将兼容级别更改为 80。
    看看可以不  
      

  3.   

    看 Select ID,LabelName,Description,LabelFlag,OrderID from [KS_Label] Where LabelType=5 AND FolderID='0' 
    查询结果的列值 在数据转换时是不是不兼容 union 前面的查询产生的列的数据类型,
    可以把union前后的查询分别select into #t..
    然后再比较
      

  4.   

    重启下sqlserver服务管理器,好了,有些莫名其妙