在更新/创建期间创建/更改存储过程超时

时间:2014-10-16 18:44:35

标签: sql-server tsql

创建或更改SQL Server(2008+)存储过程时,是否“运行”存储过程的内容或只是检查语法错误?我一直认为它只会检查语法。

我有一个相当简单的存储过程,它调用几个子过程,其中一个连接到链接服务器(mysql数据库)以从中提取信息。进行任何例行更新将导致整个过程运行,并且在更改之前经常超时。我可以确认它正在运行部分代码,因为它从mysql表中“拉”了数据。

我一直在寻找它是否是SSMS选项,或者是因为我使用的是链接服务器。

任何想法或建议都将不胜感激。

1 个答案:

答案 0 :(得分:0)

默认情况下,查询将发送给解析器。

“查询解析”

当您将T-SQL查询传递给SQL Server系统时,首先它是关系引擎。 [1]

当T-SQL到达时,它会通过一个进程来检查T-SQL是否正确写入,结果是否正确。此过程称为查询解析。解析器进程的输出是解析树或查询树(甚至是序列树)。解析树表示执行已请求的查询所需的逻辑步骤。“

https://www.simple-talk.com/sql/performance/execution-plan-basics/

解析过程逐步完成查询。这是您在“运行”sql时感到困惑的一步。