SQL Server定時執行SQL語句

來源:互聯網
上載者:User

首先:

定時作業的制定

企業管理器

--管理

--SQL Server代理

--右鍵作業

--新增作業

--"常規"項中輸入作業名稱

--"步驟"項

--建立

--"步驟名"中輸入步驟名

--"類型"中選擇"Transact-SQL 指令碼(TSQL)"

--"資料庫"選擇執行命令的資料庫

--"命令"中輸入要執行的語句:

EXEC 預存程序名 ... --該預存程序用於建立表

--確定

--"調度"項

--建立調度

--"名稱"中輸入調度名稱

--"調度類型"中選擇你的作業執行安排

--如果選擇"反覆出現"

--點"更改"來設定你的時間安排

然後將SQL Agent服務啟動,並設定為自動啟動,否則你的作業不會被執行

設定方法:

我的電腦--控制台--管理工具--服務--右鍵 SQLSERVERAGENT--屬性--啟動類型--選擇"自動啟動"--確定.

注意的是:

1.在新增作業的屬性中的分類選擇“資料庫維護”2.在調度中對於選擇每天執行時,要選擇每天執行的具體時間點,確保在指定的時間執行步驟的sql命令。

SQL Server定時執行SQL語句

預存程序

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go

ALTER PROCEDURE [dbo].[autoModify]
as
declare @Id int
declare @Order_status int
declare @FHTime datetime
declare @Add_date datetime
declare   pcurr    cursor   for
select Id,Order_status,dateadd(day,10,FHTime) as FHTime,
dateadd(day,14,Add_date) as Add_date from dbo.OrderInfo where Order_status=1 or Order_status=3
 open pcurr
  fetch next from pcurr into @Id,@Order_status,@FHTime,@Add_date
  while (@@fetch_status = 0)  
  begin  
  if(@Order_status=3)  
   begin
    if(@FHTime<getdate())
    begin
     --print 'a'
     update dbo.OrderInfo set Order_status=4 where [Id]=@Id
    end
   end
  else if(@Order_status=1)
   begin
    if(@Add_date<getdate())
    begin
     --print 'b'
     update dbo.OrderInfo set Order_status=0 where [Id]=@Id
    end
   end
 fetch next from pcurr into @Id,@Order_status,@FHTime,@Add_date 
 end  
 close pcurr  
 deallocate pcurr

 

exec [autoModify]

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.