我的目标是在远程服务器上启动一个查询,从表中删除一些行。 问题是查询需要花费很多时间才能完成,而且我不希望客户端等待其完成(也因为我们每秒支付该过程的工作,这是一个Azure自动化PowerShell作业)。 有没有办法做到这一点? [编辑]我的sql服务器是一个Azure SQL服务器,然后我不能使用代理SQL。我只是想知道它是否存在一种方法来运行查询,而不会等待其结果。[/编辑]如何在不等待ms sql结果的情况下执行查询?
回答
在SQL Server上。
- 创建存储过程从表中删除行。
- 在启用RPC的情况下(TRUE)在远程服务器上创建链接服务器。
使用此链接帮助https://technet.microsoft.com/en-us/library/ff772782(v=sql.105).aspx
要删除的记录执行存储过程
EXEC [RemoteServer] .DatabaseName.DatabaseOwner.StoredProcedureName
有关异步过程执行的详细信息。访问 http://rusanu.com/2009/08/05/asynchronous-procedure-execution/
感谢
请解释这将如何以异步方式行事,与在本地系统上执行sproc有什么不同。 – vonPryz
您可以访问http://rusanu.com/2009/08/05/asynchronous-procedure-execution/ –
您可以使用.NET API SqlCommand.BeginExecuteNonQuery,将允许异步提交查询执行请求,并继续执行其他任务。当查询结果可用时,将执行回调,但如果您对实际结果不感兴趣,则可以放置一个空实现。
是否可以在azure自动化中的ps脚本中执行此操作? –
是的。我没有一个可以方便地使用BeginExecuteNonQuery的runbook的例子,但这里是使用同步版本的例子 - ExecuteNonQuery:https://gallery.technet.microsoft.com/scriptcenter/Azure-Automation-Your-SQL-30f8736b #内容。您可以按照该示例将** ExecuteNonQuery **替换为** BeginExecuteNonQuery **并传递适当的参数。刚刚调用** BeginExecuteNonQuery **之后的代码行将在不等待查询结果的情况下执行。 –
听起来很完美 –
- 1. 如何在不显示结果的情况下执行查询?
- 2. 如何在不等待结果的情况下执行sh文件?
- 3. 如何在不进行轮询的情况下等待线程?
- 4. 如何在不执行sql语句的情况下打印sql结果?
- 5. 如何在不声明XML的情况下执行子查询?
- 6. 如何在不等待Ajax响应的情况下执行计数统计
- 7. 如何等待查询返回结果?
- 8. 等待查询结果
- 9. 如何在未等待的情况下轮询未来状态?
- 10. 在没有打印结果的情况下从终端执行MySQL查询
- 11. 使用情况下,如果在查询
- 12. MS Access SQL连接问题在“重复”查询的情况下
- 13. 如何在没有问题的情况下执行大量的SQL查询?
- 14. 如何在不等待ssh2的情况下强制加载PHP
- 15. 如何在不等待的情况下使用未来?
- 16. 如何在不抛出TaskCanceledExceptions的情况下等待任务?
- 17. 如何在不等待的情况下调用异步函数?
- 18. 如何在不等待输出的情况下继续CompletableFuture
- 19. 如何在不冻结GUI的情况下执行For循环?
- 20. 如何结合这种情况下的sql select查询?
- 21. 以下情况下的SQL查询
- 22. Facebook FQL查询在某些情况下不返回结果
- 23. ms sql查询将行转换为列不同情况
- 24. 的MS Access VBA SQL查询调试选择的情况下
- 25. 如何在不冻结用户界面的情况下等待事件发生
- 26. MS SQL选择的情况下查询真的还是假的,然后执行另一个SELECT查询
- 27. 在不进行sql查询的情况下搜索datagridview
- 28. 如何在不重新加载页面的情况下显示查询结果?
- 29. SAS:如何在不返回结果的情况下编写Teradata查询传递?
- 30. MySQL和MS SQL查询执行不同
您可以使用服务代理异步运行过程,但仍然有效,在这里:http://rusanu.com/2009/08/05/asynchronous-procedure-execution/ –
如果你可以从powershell运行它,你可以使用作业或RunSpaces – Avshalom
用户是否需要启动删除过程,还是使用无人值守的过程? –