2017-01-30 28 views
0

如果我想提出一系列SQL语句(每个语句都带有sqlcmd),我想合理地尝试在Azure SQL数据仓库上运行,在sqlcmd中发现了如何忽略错误。但我已经看到了,如果我想在声明该序列中止声明:替代Azure SQL数据仓库上的KILL'SID'

KILL "SIDxxxxxxx"; 

整个会话结束:

Msg 111202, Level 16, State 1, Server adws_database, Line 1 
111202;Query QIDyyyyyyyyyy has been cancelled. 

有没有办法不结束在Azure中的查询会话SQL数据仓库?类似于postgres的 pg_cancel_backend() 是如何工作的?

Postgres里的

pg_terminate_backed(<pid>) 

似乎同样工作的ADW

KILL 'SIDxxxx' 

命令。

回答

1

是的,客户端可以在不中止整个会话的情况下取消正在运行的请求。在SSMS中,这是红色方块在查询执行过程中所做的。

尽管如此,Sqlcmd并没有公开任何方式取消正在运行的请求。其他的客户端接口不一样,.NET的SqlClient可以使用SqlCommand.Cancel()

大卫

+0

我提交了增强请求 - https://feedback.azure.com/forums/307516-sql-data-仓库/建议/ 17890948-取消查询功能于SQLCMD – Steve

相关问题