--方法1:作业里定时执行存储过程定时作业的制定 企业管理器 --管理 --SQL Server代理 --右键作业 --新建作业 --"常规"项中输入作业名称 --"步骤"项 --新建 --"步骤名"中输入步骤名 --"类型"中选择"Transact-SQL 脚本(TSQL)" --"数据库"选择执行命令的数据库 --"命令"中输入要执行的语句: EXEC 存储过程名 ... --该存储过程用于创建表 --确定 --"调度"项 --新建调度 --"名称"中输入调度名称 --"调度类型"中选择你的作业执行安排 --如果选择"反复出现" --点"更改"来设置你的时间安排 然后将SQL Agent服务启动,并设置为自动启动,否则你的作业不会被执行 设置方法: 我的电脑--控制面板--管理工具--服务--右键 SQLSERVERAGENT--属性--启动类型--选择"自动启动"--确定. --方法2:将存储过程创建在master数据库中,然后企业管理器中找到这个存储过程--右键--属性--勾选"每当sql server启动时执行"。 或在master中创建存储过程后,执行语句配置为自动启动 use master exec sp_procoption '存储过程名','startup','on' 自动执行存储过程 SQL Server 启动时能够自动执行一个或多个存储过程。这些存储过程必须由系统管理员创建,并在 sysadmin 固定服务器角色下作为后台过程执行。这些过程不能有任何输入参数。 对启动过程的数目没有限制,但是要注意,每个启动过程在执行时都会占用一个连接。假如必须在启动时执行多个过程,但无需并行执行,则能够指定一个过程作为启动过程,让该过程调用其他过程。这样就只占用一个连接。 在启动时恢复了最后一个数据库后,即开始执行存储过程。若要跳过这些存储过程的执行,请将启动参数指定为跟踪标记 4022。假如以最低配置启动 SQL Server(使用 -f 标记),则启动存储过程也不会执行。有关更多信息,请参见跟踪标记。 若要创建启动存储过程,必须作为 sysadmin 固定服务器角色的成员登录,并在 master 数据库中创建存储过程。 使用 sp_procoption 能够: 将现有存储过程指定为启动过程。
㈡ SQL修改存储过程创建日期
你的方法是正确的。相信自己,没错的。
我用sp_who试了下,时间改过来了
已将配置选项 'allow updates' 从 0 改为 1。请运行 RECONFIGURE 语句以安装。
(所影响的行数为 1 行)
已将配置选项 'allow updates' 从 1 改为 0。请运行 RECONFIGURE 语句以安装。
㈢ SQL Server 里需要定时执行某个存储过程,存储过程怎么写
1、管理->SQL Server代理->作业(按鼠标右键)->新建作业->
2、新建作业属性(常规)->名称[自定义本次作业的名称]->启用的方框内是勾号->
分类处可选择也可用默认的[未分类(本地)]->所有者默认为登录SQL Server用户[也可选其它的登录]->描述[填写本次工作详细描述内容];[ 创建作业分类的步骤:SQL Server代理->作业->右键选所有任务->添加、修改、删除 ]
3、新建作业属性(步骤)->新建->步骤名[自定义第一步骤名称]->类型[Transact-SQL(TSQL)脚本]->数据库[要操作的数据库]->命令[ 如果是简单的SQL直接写进去即可,也可用打开按钮输入一个已写好的*.sql文件如果要执行存储过程,填exec p_procere_name v_parameter1,[ v_parameter2…v_parameterN]]->确定(如果有多个步骤,可以再次调用下面的新建按钮;也可以对已有的多个步骤插入、编辑、删除);
4、建作业属性(调度)->新建调度->名称[自定义调度名称]->启用的方框内是勾号->调度->反复出现->更改[调度时间表]->确定(如果只要保存此作业,不要定时做可以把启用的方框内是勾号去掉);
5、建作业属性(通知)->用默认的通知方法就好[当作业失败时,写入Windows应用程序系统日志] ->确定。
㈣ sql中如何设置存储过程的默认值为当前日期
存储过程参数的默认值只允许常量和null. 可以做如下修改:
create proc proc_borrow
@willdate datetime=null,@retumdate datetime=null
as
select * from Borrow where WillDate between isnull(@willdate,dateadd(yy,-1,GETDATE())) and isnull(@retumdate,GETDATE())
go
㈤ sqlserver怎么限制一个存储过程或一条语句的执行时间
我觉得超时对于连接来说,也是一种异常,正常情况下,连接异常就回滚操作,关闭连接就好了
至于数据库连接的建立,那是数据库连接池做的工作呀,不影响的
㈥ 在sql存储过程中Print如何来设置时间
如果是判断存储过程的运行时间,那么你@BeginTime2应该是在运行开始时,赋为当前日期值,在存储过程最后打印,实际基本可以判断出运行的分钟数了吧。
日期类型需要转换为字符串才能和字符串拼接
Convert(varchar(20),getdate(),20) 是日期转换字符串的转换函数其中最后的20是字符串格式化参数,比如Convert(varchar(20),getdate(),113),Convert(varchar(20),getdate(),120)都可以转换为不同格式的日期显示格式
Cast是强制类型转换,在这里是将int类型转换为字符串,使用方式举例:cast (123 as varchar) ,cast('2434' as int) 具体可以看看SQL帮助(查询分析器按F1)
Datediff是日期比较函数, 其中mi指两个时间的分钟差额,返回的是int类型,如果要拼到字符串中,也需要转换为字符串.datediff还可以判断相差的天数:
datediff(dd,'2010-12-25',getdate()) 年数、秒数等等,具体可以参考帮助和自己动手实验了。
㈦ SQL存储过程我想设定一个时间,过三个小时后再执行这个存储过程
存储过程内不能直接使用create或alter,需要使用EXECUTE执行动态语句才可以
还有执行存储过程,必须在命令窗口内执行
㈧ MSSQL数据库中定时存储的存储过程
您好!要实现你要的功能;操作如下:
一、可以先写好存储过程的内容;放在目标数据库中
二、在MSSQL的SQL server代理——〉作业——〉新建一个作业 在[常规]选项卡中 设置 名称AUTOZY——〉在[步骤]选项卡中 点击[新建作业]
三、在弹出的作业步骤窗口中;填写步聚名称(自己取一个)--运行身份选择SA或者WINDOWS运行都可以---在数据库处选择 目标数据库(这步很关键)---
在命令 处 写 exec 存储过程的名称(这个不要写错)---点击[确定] 返回上级窗口
四、选择[计划]选项卡 --在计划窗口中可以具体设置怎么样定时运行的方案
五、设置好后 [确定]返回上级窗口---再点击[确定]保存了这个作业
如有不明之处;欢迎CALL 我
㈨ SQL数据库里面存储过程里面的创建时间怎么修改
抱歉,我没有体温过这样的问题。但是,我依然可以回答你的问题,你编辑存储过程的,里面有注释,以SQL SERVER 2005和SQL SERVER 2008 R2为例,修改存储过程:你会看到里面有这样的时间戳,如果你深入了解一下,你会发现,它这个时间的来历,是调用了.NET FRAMEWORK 种的DateTime类中的方法获取的。每次编辑,都获取当前时间,仅此而已。
㈩ sql server中的存储过程的日期参数怎么赋当前日期
执行下面的存储过程即可:
SELECT [name], [create_date], [modify_date]
FROM [sys].[objects]
WHERE [type] = 'P'
ORDER BY [modify_date] DESC
如果想找到更多的被修改过的存储过程、用户表、自定义函数,触发器,可以执行下面的SQL语句:
SELECT [name],[create_date] , [modify_date]
FROM [sys].[objects]
WHERE [type] IN('P','U','IF','TR') --存储过程,用户表,自定义函数,触发器
ORDER BY [modify_date] DESC