• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > 在SQL Server启动时自动执行存储过程。第1/2页

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

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-05

匿名通过本文主要向大家介绍了sqlserver,自动执行,存储过程等相关知识,希望本文的分享对您有所帮助

当sql server启动时,我很想运行一个存储过程。有没有一种方法可以在每次SQL Server服务启动时都会自动执行这个存储过程呢?

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的公制表。这张表保留了上次服务器启动的日期和时间。一旦建立了这个基本的架构,我就创建存储过程,在服务器启动时,这个存储过程将用于把日期和时间插入到表中。注意,存储过程是在主从数据库上创建的。
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 如何获取SqlServer2005表结构(字段,主键,外键,递增,描述)
  • 如何在SQL Server中实现 Limit m,n 的功能
  • 深入Mysql,SqlServer,Oracle主键自动增长的设置详解
  • 小编带你深入解析SQL Server索引的原理
  • sqlserver帐号被禁用如何处理
  • sqlserver查询锁住sql以及解锁的方法
  • MS SQLServer 批量附加数据库的方法
  • SqlServer 2008 创建测试数据的方法
  • 讲解有关sqlserver分页查询处理方法
  • MYSQL同步Sqlserver数据库数据

相关文章

  • 2017-05-11在MySQL中操作克隆表的教程
  • 2018-12-05SQL Server 索引介绍
  • 2017-05-11使用innodb_force_recovery解决MySQL崩溃无法重启问题
  • 2018-12-05MySQL Event Scheduler(事件调度器)
  • 2018-12-05MySQL BETWEEN 用法
  • 2018-12-05解决MSSQL2005远程连接sql2000非默认端口数据库的问题
  • 2018-12-05详细介绍mysql5.7创建用户授权删除用户撤销授权的示例代码
  • 2018-12-05mysql database manual(mysql数据库手册)
  • 2018-12-05了解mysql中select语句操作实例
  • 2017-05-11Mysql中LAST_INSERT_ID()的函数使用详解

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • sqlserver 2000数据库同步 同步两个SQLServer数据库的内容
    • 千万级记录的Discuz论坛导致MySQL CPU 100%的优化笔记
    • MySQL性能:使用 MySQL 5.7 实现每秒 50 万查询
    • oracle 重置sys密码的方法介绍
    • sqlserver 触发器实例代码
    • oracle 数据库数据迁移解决方案
    • 如何用命令行进入mysql具体操作步骤
    • php利用GD库生成缩略图示例
    • svm各种工具箱 方法以后查找
    • mysql常用基础操作语法(十二)~~常用数值函数【命令行模式】

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有