毛毛的小窝 — 关注技术交流、让我们一起成长

导航

sp_executesql和临时表的用法

        相比oracle,sqlserver对数据集的操作不直观,而且比较麻烦。我就遇到这样的一种情形,想获取 exec sp_executesql @sql返回的数据集,然后对返回的数据集进行遍历。
        起初,我利用游标来操作返回的数据集,但是游标不支持 exec sp_executesql @sql 返回的数据集,于是我想到了临时表,但很快发现,利用 exec sp_executesql 操作创建的临时表,其作用范围只存在于当前语句中,它后面的语句就不能再引用这个临时表了。
        也许有人会说,先把临时表定义好,不就可以了。其实,我要做的这个工作,临时表的列是变化的,所以不能先定义临时表。这是我想到了全局临时表,把查询的数据集存入全局临时表中。
        下面给出sqlserver和oracle进行此类操作的代码,希望能对大家有所帮助。
Code

oracle代码操作如下:
Code

如果大家更好的,解决该问题的方法,即时讨论。

posted on 2009-08-19 09:12  mjgforever  阅读(4736)  评论(1编辑  收藏  举报