Azure SQL作業
Posted lzone6
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Azure SQL作業相关的知识,希望对你有一定的参考价值。
由於要定期去刪除比較久的資料,礙於Azure SQL DB目前無法直接創建作業,目前找到一種方式就是通過local的SQL SERVER來執行AZURE SQL指令。
步驟如下:
SQL Server Management Studio 2014 ,登錄local之後,打開SQL Server Agent
新增作業,輸入名稱:
新增步驟,輸入名稱為「Create list」:
類型選擇「作業系統(CmdExec)」,執行身份「SQL Server Agent服務賬戶」,
命令為:
sqlcmd -U 「賬號」 -d 「資料庫名稱」-S 「xxxxxxx.database.windows.ne」t -P 「登錄密碼」 -i c:\\script\\deleteLog.sql -o c:\\script\\azureoutput.tx
c:\\script\\deleteLog.sql 這個script為需要執行的SQL語法,例如刪除表等等;
- -U Azure SQL登錄賬戶
- -d 資料庫名稱
- -P Azure SQL登錄密碼
- - i 執行的script路徑
- -o 執行結果輸出文件
設置輸出檔:
新增排程如下:
類型為「重複執行」
發生於「每日」
重複頻率「1」天
作業活動監視器可以查看所有作業的執行狀態,如果有錯誤,可以到上一步-o指定的文件查看。
deleteLog.sql內容如下:
DELETE FROM TKBLSTS WHERE JOB_NO IN (SELECT JOB_NO FROM TKBL WHERE (GROUP_ID<>\'EG\' AND GROUP_ID<>\'PL\') AND CREATE_DATE < DATEADD(MONTH,-4,getdate())); GO DELETE FROM TKBLPTY WHERE JOB_NO IN (SELECT JOB_NO FROM TKBL WHERE (GROUP_ID<>\'EG\' AND GROUP_ID<>\'PL\') AND CREATE_DATE < DATEADD(MONTH,-4,getdate())); GO DELETE FROM TKBLCNTR WHERE JOB_NO IN (SELECT JOB_NO FROM TKBL WHERE (GROUP_ID<>\'EG\' AND GROUP_ID<>\'PL\') AND CREATE_DATE < DATEADD(MONTH,-4,getdate())); GO DELETE FROM TKBLFLNO WHERE JOB_NO IN (SELECT JOB_NO FROM TKBL WHERE (GROUP_ID<>\'EG\' AND GROUP_ID<>\'PL\') AND CREATE_DATE < DATEADD(MONTH,-4,getdate())); GO DELETE FROM TKBLPO WHERE JOB_NO IN (SELECT JOB_NO FROM TKBL WHERE (GROUP_ID<>\'EG\' AND GROUP_ID<>\'PL\') AND CREATE_DATE < DATEADD(MONTH,-4,getdate())); GO DELETE FROM TKBL WHERE (GROUP_ID<>\'EG\' AND GROUP_ID<>\'PL\') AND CREATE_DATE < DATEADD(MONTH,-4,getdate()); GO DELETE FROM OTH_LOG1 WHERE CREATE_DATE < DATEADD(day,-10,getdate());
以上是关于Azure SQL作業的主要内容,如果未能解决你的问题,请参考以下文章
Azure 机器人微软Azure Bot 编辑器系列 : 机器人/用户提问回答模式,机器人从API获取响应并组织答案 (The Bot Framework Composer tutorial(代码片段