我最近正在阅读有关游标数据类型的 Microsoft 页面。 我读了以下内容:
“Transact-SQL 存储过程只能对 OUTPUT 参数使用游标数据类型。如果为参数指定了游标数据类型,则 VARYING 和 OUTPUT 参数都是必需的。如果为参数指定了 VARYING 关键字,数据类型必须是游标并且必须指定 OUTPUT 关键字。"
“VARYING”到底是什么或意味着什么???
预先感谢您的帮助。
最佳答案
来自CREATE PROCEDURE documentation :
"VARYING Specifies the result set supported as an output parameter. This parameter is dynamically constructed by the procedure and its contents may vary. Applies only to cursor parameters. This option is not valid for CLR procedures."
当您指定 CURSOR
类型的参数时,VARYING
关键字只是语法的一部分。
据说选择关键字是因为参数中返回的结果未指定,并且结果的布局可以在不破坏定义的情况下发生变化。相反,TABLE
类型(仅限输入)的参数具有已定义的布局。
关于sql - 什么是变化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22767353/