如题,我追了下sql如下with RelClass 
as 

select * from AA_InventoryClass where  id = 'DB3BE7AA-E5BB-4013-A34A-DCD4B4500E4C'
union all 
select csc.* from AA_InventoryClass as csc inner join RelClass as rc on csc.idparent = rc.id ) 
SELECT * from RelClass
 这个是查询子节点的   在win7 下运行程序后,就直接 如上边语句一样但是在xp下运行时,会在上边查询语句最前边加上exec,就会提示with附近有语法错误,该怎么办啊,非常急!!!!

解决方案 »

  1.   

    sql递归调用是sql2005增加的功能, 查询分析器中执行的话各操作系统应该都没问题.lz可以将上边的递归查询在存储过程中实现, 然后delphi的数据控件调用存储过程.
      

  2.   

    结贴吧,100分。
    ;with RelClass --with前加分号
    as 

    select * from AA_InventoryClass where  id = 'DB3BE7AA-E5BB-4013-A34A-DCD4B4500E4C'
    union all 
    select csc.* from AA_InventoryClass as csc inner join RelClass as rc on csc.idparent = rc.id ) 
    SELECT * from RelClass
      

  3.   

    太搞笑了吧,明知是 XP 中执行时加了 exec 就报错,还来问,搞得好像很无辜的样子。