不清楚.但是动态SQL不支持表变量.可以将你的临时表变为临时使用的表,用之前创建,用完后删除.

解决方案 »

  1.   

    提示你对象名"#mytotal"无效对嘛?
      

  2.   

    用临时表是可以的,只是reporting service的确会有错误提示,但你不管它,确定之后点击那个刷新字段按钮结果集便会把字段列出来,就可以用了!我觉得你这种情况用表变量应该也可以,当然这个我没试验过,好久没用reporting service了
      

  3.   

    Reportint Services和数据库一样.
    数据库支持的写法.在这里面都支持(常用的)
    以前做过,临时表,动态sql,都可以.
      

  4.   

          reporting services支持临时表是肯定的。而且用法也就是在procedure中将多个表中的数据insert到临时表中。最后再select from 临时表取得数据就行了。       而且报表结果集依赖临时表也没有关系吧。只是那个结果集的名字是那样的,我们只需要将临时表中的字段拖到报表的单元格中就行了吧。应该是没影响的。这些我以前用过的。
      

  5.   

    谢谢各位的解答 to dawugui: 可以将你的临时表变为临时使用的表,用之前创建,用完后删除.
    关于这个 依旧是有冲突的 因为我的用户往往容易统一在同一个时间点 比如每周一上午9点00开始检查上一周的业务 一旦一个查询超过1分钟 就有可能不同地方的两个人同时查询 如果不用临时表用普通表的话 即便是用时建立完毕删除 依旧有可能两个用户冲突的。to hyqwan11112:
    是的 提示我这个表"#mytotal"无效 因为这个临时表当时并不再数据库中真实存在。
    确定之后点击那个刷新字段按钮结果集便会把字段列出来 -- 关于这个 我一般在 报表向导 - 报表查询 这一步输入查询字符串的时候已经走不下去了 这里是没有刷新字段按钮的吧?to zhangzeshuai:
    主要是走到这步 报表向导 - 报表查询 - 输入查询字符串 就走不去下了 我找不到 查询工具栏 我是develop版 难道这个没有?to xiaohanxu
    需要将临时表中的字段拖到报表的单元格中就行了
    -- 怎么拖呢?我只能走到这步 根本走不到最后的 数据 -布局-预览 那个界面去啊 就说 我连报表向导都走不完 无法保存的~to wbfsa
    谢谢~~
      

  6.   

    解决了 多谢以上各位提醒了我 使用报表向导是无法使用存储过程的 直接创建报表 在数据里输入存储过程 命令类型选择storeprocedure 然后刷新 各种参数就出来了 临时表是支持的 
      

  7.   

    楼主,我也是在reporting services中使用存储过程,也是在命令类型中选择storeprocedure,在查询字符串中输入“exec 存储过程名 @参数1,@参数2”,我的存储过程只返回一个值,点击刷新字段后,没有反应,而且点击运行时,出现00972错误:identifier is too long。
    请问楼主,有无办法解决?谢谢!