现在碰到一个问题是这样的:软件的客户端需要有一个预警信息,这个预警信息每隔N秒需要更新一次,预警信息的计算量挺大的,如果直接在客户端提交请求,由数据库服务器生成结果返回给客户端,这样的话客户端需要等待,而且客户端数量多,提交的都是同样的请求,返回的都是同样的结果,感觉不是很合适。可不可以在Sql服务器中每隔N秒计算一次,然后客户端直接取计算结果,这样客户端不需要等待。但是SQL怎么设计每隔N秒执行一次存储过程(用应用服务器提交请求和计划任务提交请求哪个更合适,还是有其它更好的方法)?
执行的结果如何保存,是否用全局临时表?

解决方案 »

  1.   

    但是SQL怎么设计每隔N秒执行一次存储过程
    SQL代理作业执行的结果如何保存,是否用全局临时表?
    用物理表
      

  2.   

    每隔n秒执行一次 如果n太小 执行太频繁 总感觉不太好。用job就可以实现。
      

  3.   

    用作业?定时作业的制定企业管理器 
    --管理 
    --SQL Server代理 
    --右键作业 
    --新建作业 
    --"常规"项中输入作业名称 
    --"步骤"项 
    --新建 
    --"步骤名"中输入步骤名 
    --"类型"中选择"Transact-SQL 脚本(TSQL)" 
    --"数据库"选择执行命令的数据库 
    --"命令"中输入要执行的语句: 
                           EXEC 存储过程名 ... --该存储过程用于创建表 --确定 
    --"调度"项 
    --新建调度 
    --"名称"中输入调度名称 
    --"调度类型"中选择你的作业执行安排 
    --如果选择"反复出现" 
    --点"更改"来设置你的时间安排  
    然后将SQL Agent服务启动,并设置为自动启动,否则你的作业不会被执行 设置方法: 
    我的电脑--控制面板--管理工具--服务--右键 SQLSERVERAGENT--属性--启动类型--选择"自动启动"--确定.