在SQL Server启动时自动执行存储过程。第1/2页

所属分类: 数据库 / MsSql 阅读数: 641
收藏 0 赞 0 分享
sql Server提供了系统存储过程sp_procoption,这个存储过程可以用于当SQL Server服务启动时指派一个或者多个存储过程自动执行。这是一个很不错的选择,它可以用于多种多样的用途。比如,你可能在你的数据库中有开销很大的查询,这个查询在首次执行时会花费一些时间。通过使用sp_procoption,你可以在服务器启动时运行这个查询以此来预先编译执行计划,由此,你的某个用户就不会成为第一个运行这个特殊查询的不幸的人。我曾经用这个功能建立了一个我自己写的概要分析器服务器端跟踪的自动执行功能,这个跟踪功能成为服务器启动时被设置成自动执行的存储过程的一部分。
复制代码 代码如下:

sp_procoption Parameters
  exec sp_procoption @ProcName = ['stored procedure name'],
  @OptionName = 'STARTUP',
  @OptionValue = [on|off]

以下是sp_procoption存储过程参数的解释:

  l 参数@ProcName的意思是明显的,它是被标记成自动执行的过程的名称。

  l 参数@OptionName是可选用项,唯一有效的选项是STARTUP。

  l 参数@OptionValue切换自动执行的开与关。

  使用有特定限制的sp_procoption:

  l 你必须以系统管理员的身份登录服务器并使用sp_procoption。

  l 你只能指派标准存储过程、扩展存储过程或者CLR存储过程来启动。

  l 存储过程必须在主从数据库上。

  l 存储过程不能要求任何输入参数或者返回任何输出参数。

  在下面的例子中,我创建一个存储过程,每次启动我的SQL Server实例时,这个存储过程就自动执行。这个存储过程的目的是在记录服务启动时间的数据库表中写一行。通过这张数据库表,我产生一个获得服务器正常运行时间的想法。以下的脚本创建了一个新的数据库,这个数据库存储了一张叫做SERVER_STARTUP_LOG的公制表。这张表保留了上次服务器启动的日期和时间。一旦建立了这个基本的架构,我就创建存储过程,在服务器启动时,这个存储过程将用于把日期和时间插入到表中。注意,存储过程是在主从数据库上创建的。
更多精彩内容其他人还在看

SQL Server正确删除Windows认证用户的方法

这篇文章主要给大家介绍了关于SQL Server正确删除Windows认证用户的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用SQL Server具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

SQL Server查看login所授予的具体权限问题

在SQL Server数据库中如何查看一个登录名(login)的具体权限呢,下面脚本之家小编给大家带来了SQL Server查看login所授予的具体权限问题,感兴趣的朋友一起看看吧
收藏 0 赞 0 分享

Mysql8.0.17安装教程【推荐】

本文通过图文并茂的形式给大家介绍了Mysql8.0.17安装,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

C# ling to sql 取多条记录最大时间

这篇文章主要介绍了C# ling to sql 取多条记录最大时间,文中通过实例代码给大家介绍了sql 查询相同记录下日期最大的 一条,代码简单易懂,需要的朋友可以参考下
收藏 0 赞 0 分享

sql server编写archive通用模板脚本实现自动分批删除数据

这篇文章主要介绍了sql server编写archive通用模板脚本实现自动分批删除数据,需要的朋友可以参考下
收藏 0 赞 0 分享

SQL Server怎么找出一个表包含的页信息(Page)

这篇文章主要给大家介绍了关于SQL Server是如何找出一个表包含的页信息(Page)的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用SQL Server具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

SQLyog连接MySQL8.0报2058错误的完美解决方法

这篇文章主要介绍了SQLyog连接MySQL8.0报2058错误的完美解决方法,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

SQL SERVER日志进行收缩的图文教程

这篇文章主要给大家介绍了关于SQL SERVER日志进行收缩的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用SQL SERVER具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

SqlServer中批量update语句

我现在想把S_USER表中的ACCOUNT批量修改成S_PERSON的ACCOUNT,那么就可以参考下面的语句,要找到对应的字段
收藏 0 赞 0 分享

SqlServer AS的用法

本篇文章简要分析,在SQL SERVER中,AS的基本用法,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多