查询在SQL Server中返回什么?

时间:2016-08-28 13:35:46

标签: sql-server database-administration

当我们在SQL Server中执行“Alter”查询时,我们得到“命令执行成功”消息。

所以我的问题是,是什么让SQL Server在执行查询后显示该消息?

据我所知,该查询可能返回一些值,具体取决于该值,SQL Server决定显示哪条消息。那么,根据哪个SQL Server显示成功的消息返回的值是什么?

2 个答案:

答案 0 :(得分:1)

“消息”选项卡显示SqlConnection.InfoMessage返回的内容。这是TDS协议功能。 SQL Server不仅可以返回结果集,还可以返回消息和错误。

SSMS没有决定要展示什么。它只输出SQL Server发送给它的任何内容。

答案 1 :(得分:1)

这是在TDS层处理的,具体取决于语句,客户可以返回其中一个令牌值。

link包含所有TOKENS

例如..

  

令牌流名称:DONE

表示SQL语句的完成状态。

  

此标记用于指示SQL语句的完成。由于可以在单个SQL批处理中将多个SQL语句发送到服务器,因此可以生成多个DONE标记。在这种情况下,除最终DONE标记之外的所有标记都将具有设置了DONE_MORE位的状态值。

另请查看此链接以了解how SQLServer executes a query