2017-07-27存储过程及其创建有何

05/05 19:22:20 来源网站:辅助卡盟网

#表示本地暂存进程,##表示全局暂存进程。 SQL Server 关闭后,这个进程将不复存在。 当连接到不支持重用 Transact-SQL 语句或批处理执行计划的早期版本的 SQL Server 时,临时存储过程很有用。

连接到SQLServer2000的应用程序应该使用sp_executesql系统存储过程而不是临时存储过程。 有关详细信息,请参阅执行计划缓存和重用。 只有创建本地临时过程的连接才能执行该过程。 当连接关闭时(用户从 SQLServer 注销)sql 查看存储过程脚本,该过程将被手动删除。

任何连接都可以执行全局临时存储过程。 只有在创建该过程的用户使用的连接关闭并且该过程的当前执行版本使用的所有其他连接都已完成运行后,全局临时存储过程才会停止存在。 一旦用于创建过程的连接关闭,它将不再允许执行全局临时存储过程。

sql 查看存储过程脚本_sql分页存储_sql 查看存储过程脚本

只有那些已经开始执行存储过程的连接才被允许完成该过程。 如果直接在tempdb数据库中创建一个没有#或##前缀的存储过程,因为每次启动SQLServer都会重新创建tempdb,所以SQLServer关闭时会手动删除该存储过程。

直接在 tempdb 中创建的过程在创建该过程的连接中仍然存在。 与任何其他对象一样,可以授予、拒绝和撤销其他用户执行此临时存储过程的权限。 CREATEPROCEDURE 创建一个存储过程,它是可以接受和返回用户提供的参数的 Transact-SQL 语句的集合。

可以创建一个过程以供永久使用、在一个会话中临时使用(局部临时过程)或在所有会话中临时使用(全局临时过程)。 还可以创建在 Microsoft® SQL Server™ 启动时手动运行的存储过程。

句型 CREATEPROC[EDURE]procedure_name[;number][{@parameterdata_type}[VARYING][=default][OUTPUT]][,.

. . n][WITH{RECOMPILE|ENCRYPTION|RECOMPILE,ENCRYPTION}][FORREPLICATION]ASsql_statement[.

. . n] parameter procedure_name 新存储过程的名称。 过程名称必须符合标识符规则,并且对于数据库及其所有者必须是唯一的。 有关详细信息,请参阅使用标识符。 要创建局部临时过程,可以在procedure_name 后面加一个数字符号(#procedure_name),要创建全局临时过程,可以在procedure_name 后面加两个数字符号(##procedure_name)。

全名(包括#或##)不能超过128个字符。 指定进程所有者的名称是可选的。 ;number 是一个可选的整数,用于对同名过程进行分组,这样同一个组中的过程可以用一个DROPPROCEDURE语句一起删除。

例如,名为 orders 的应用程序使用的过程可以命名为 orderproc;1、orderproc;2sql 查看存储过程脚本,等等。 DROPPROCEDUREorderproc 语句将删除整个组。 如果名称包含定界标识符,则标识符中不应包含数字,并且应仅在 procedure_name 周围使用适当的定界符。

    暂无相关资讯
2017-07-27存储过程及其创建有何