不是用界面创建作业.是这样的,我的应用程序要定时的call一个存储过程sp_main,在这个存储过程里面调用了一个执行时间会比较长的另外一个sp_long,oracle里面可以在调用时候就直接让sp_long当做一个job跑,这样sp_main在执行完一批的时间较短的操作后就可以很快的返回了.想请教下sqlserver里面怎么在sp调用另一个执行时间长的sp的时候可以采用异步调用的方式?让自己很快的返回?

解决方案 »

  1.   

    作业要事先定义啊,不管是用界面还是用sql语句
    我的意思就是我的一个sp_main会调用一个执行时间较长的sp_long
    但是我想让sp_main去异步的调用sp_long,也就是sp_main不用等待sp_long执行完毕,自己就可以直接返回了.  sp_long是执行一些不是很实时的计算任务的,它自己跑完后就可以了,也不用通知任何人
      

  2.   

    谢谢
    你的意思是我在sp_main里面通过osql调用sp_long么?
      

  3.   

    Procedure : 后台: Run!!!!!!!!!!!!!!
    Procedure : 前台: Stop!!!!!!!!!!!!!!!!!!!!
      

  4.   

    刚google了下,貌似sqlserver没有能异步调用存储过程的内容...oracle的有一些
    那我有个思路,在sp_main创建一个让sp_long能立即跑起来的作业,作业完成后自动删除,然后sp_main返回
    这样可以的吧?