打開查詢分析器。
連接到某資料庫。
點擊打開,找到SQL腳本,打開;或直接編輯窗口中編輯新腳本。
點擊執行查詢按扭或使用快捷鍵F5執行當前窗口中全部腳本,也可選中腳本中部份語句然後點擊執行按扭或F5有選擇地執行腳本語句。
② 如何讓sql自動定時執行某個存儲過程
declare @ftype int,@fstype int,@ffactor int
select @ftype=case @freqtype when 'day' then 4
when 'week' then 8
when 'month' then 16 end
,@fstype=case @fsinterval when 1 then 0 else 8 end
if @fsinterval<>1 set @time=0
set @ffactor=case @freqtype when 'day' then 0 else 1 end
EXEC msdb..sp_add_jobschele @job_name=@jobname!
③ 如何讓sql每天執行一下一個寫好的sql語句
可以設置定時任務,比較常用的是用sqlserver 代理新建作業。有時候資料庫自動備份也是用的這個。
還有一種比較復雜自己寫個程序,使用系統定時任務 定時執行。
創建sql server定時任務作業步驟如下:
1.要先安裝了sqlserver 代理服務
--2.滑鼠右擊【SQL Server 代理】,選擇【啟動(S)】,如已啟動,可以省略此步驟;
--3.展開【SQL Server 代理】列表,右擊【作業】--【新建作業】;
--3.1 在【常規】選項卡中:
-- 輸入作業名稱,如My Job;
--3.2 在【步驟】選項卡中:
--3.2.1 點擊【新建】,輸入【步驟名稱】,如步驟1,類型默認T-SQL腳本,也可以選擇SSIS包等;
--3.2.2 在【資料庫】一欄選擇要作業處理的資料庫,在【命令】的右邊空白編輯欄輸入要執行的SQL代碼,
EXEC p_Name --如:執行一個P_Name的存儲過程
-- 也可以點擊命令下面的【打開】,打開.sql腳本;
--3.2.3 輸入運行腳本後,建議點擊【分析】,確保腳本語法正確,然後點擊下面的【確定】按鈕;
--3.3 在【計劃】選項卡中:
--3.3.1 點擊【新建】,輸入【計劃名稱】,如計劃1,計劃類型默認是重復執行,也可以選擇執行一次等;
--3.3.2 在【頻率】--【執行】處選擇每天、每周或每月,以每天為例,間隔時間輸入間隔幾天執行一次,
-- 下面還可以選擇每天一次性執行或間隔一定的時間重復執行
--3.3.3 在【持續時間】中選擇計劃開始執行的【起始日期】和【截止日期】,然後點擊【確定】按鈕;
--注意要將服務設置為自動啟動,否則在重啟伺服器後作業就不運行了。
--啟動代理服務的方法:
--開始--運行--輸入services.msc--找到【SQL Server 代理】的服務並雙擊--【啟動類型】選擇自動--【確定】
--至此,定時作業已創建完畢。
④ SQL server如何定時執行一些腳本
--"類型"中選擇"Transact-SQL 腳本(TSQL)" --"資料庫"選擇執行命令的資料庫 --"命令"中輸入要執行的語句: Update City Set IsAccess=0--確定--"調度"項--新建調度--"名稱"中輸入調度名稱 --"調度類型"中選擇你的作業執行安排--定為每天調度一次,時間為18:40即可 --如果選擇"反復出現" --點"更改"來設置你的時間安排 然後將SQL Agent服務啟動,並設置為自動啟動,否則你的作業不會被執行設置方法:我的電腦--控制面板--管理工具--服務--右鍵 SQLSERVERAGENT--屬性--啟動類型--選擇"自動啟動"--確定.
⑤ 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 server 2000怎樣設置定時自動運行SQL語句
如果在SQL Server 里需要定時或者每隔一段時間執行某個存儲過程或3200字元以內的SQL語句時,
可以用管理->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 Server知識:
SQLSERVERAGENT服務必須正常運行,啟動它的NT登錄用戶要跟啟動SQL Server資料庫的NT登錄用戶一致。
點作業右鍵可以查看作業執行的歷史記錄情況,也可以立即啟動作業和停止作業。
最近在看作業歷史記錄時,發現有的作業記錄的歷史記錄多,有的作業記錄的記錄的歷史記錄少.
如何能使某些作業按各自的需求,保留一段時間.比如保留一個月的歷史記錄.
看了SQL Server的在線幫助文檔,裡面介紹說:
在管理->SQL Server代理->右鍵選屬性->作業系統->限製作業歷史記錄日誌的大小->
作業歷史記錄日誌的最大大小(行數) 默認為1000 如果某台機器的作業數量很多,一定要提高它,例如為100000
每個作業歷史記錄日誌的最大行數 默認為100 如果作業每天執行兩次,需要保留一個月的日誌,可以設為60
它們之間有一個相互制約關系, 我們可以根據自己的需要來改.
如果SQL Server伺服器改過機器名, 管理是舊名稱時建立的job的時候可能會遇到
錯誤14274: 無法添加、更新或刪除從MSX伺服器上發起的作業(或其步驟或調度)
看了Microsoft的文檔:http://support.microsoft.com/default.aspx?scid=kb;en-us;281642
說SQL Server 2000系統里msdb..sysjobs 里originating_server 欄位里存的是原來的伺服器的名稱.
24X7在用的系統肯定不能按上面Microsoft的文檔說的那樣把名字改回來又改過去。
於是想,msdb..sysjobs 能否update originating_server 欄位成現在在用的新伺服器名?
use msdb
select * from sysjobs
找到originating_server 欄位還是舊伺服器的job_id, 然後執行update語句:
update sysjobs set originating_server='new_server_name'
where job_id='B23BBEBE-A3C1-4874-A4AB-0E2B7CD01E14'
(所影響的行數為 1 行)
這樣就可以添加、更新或刪除那些曾經出error 14274 的作業了。
如果想把作業由一台機器遷移到另一台機器,可以先保留好創建作業的腳本, 然後在另一台機器上運行。
導出所有作業的創建腳本操作步驟:
管理->SQL Server代理->作業(滑鼠右鍵)->所有任務->生成SQL腳本->保存到操作系統下的某個sql文件導出某一個作業的創建腳本操作步驟:
管理->SQL Server代理->作業->選中待轉移的作業(滑鼠右鍵)->所有任務->生成SQL腳本->保存到OS下的某個sql文件然後在目的伺服器上運行剛才保存下來的創建作業的sql腳本。
( 如果建作業的用戶或者提醒的用戶不存在, 則會出錯;
我們需要在目的伺服器上建立相關的WINDOWS用戶或者SQL Server資料庫登錄,
也可以修改創建作業的腳本, 把目的伺服器上不存在的用戶替換成已經有的用戶。
如果生成日誌的物理文件目錄不存在,也應該做相關的修改,例如d:區轉f:區等
字元串的 @command 命令里有分隔符號 go 也會出錯, 可以把它去掉)
⑦ 怎麼使某一條sql語句每天定時執行
在linux or Unix系統中有一個叫crontag的東西。
你可以設定執行的時間,它就是每天循環執行了。
格式:(second hour date month week)
00 10 * * * /u01/app/cronjob/exe_select.sh
每天十點整執行一次
⑧ 如何定時的去執行SQL語句
1.把要執行的SQL語句准備好,例如:
use ttNew //使用ttNew資料庫
Go
insert into Users(name) values(" ") //往表Users插入一條記錄
將該語句保存在文件user.sql里,放在d盤跟目錄下。
2.寫一個批處理文件,例如:
再新建一個記事本,里邊寫上語句osql -E -i d:\user.sql,保存為11.bat
3.利用系統任務計劃調用批處理文件,執行SQL語句
在系統程序->附件->系統工具->任務計劃
添加新任務計劃,點下一步,再點瀏覽,找到11.bat文件,後,選擇執行時間,點下一步。一直點,最後輸入本機的密碼,點完成。
⑨ 怎麼樣才能讓sql資料庫定期執行一句sql語句
create or replace procere MYPROCEDURE is
begin
UPDATE mac_vod SET vod_play_url= replace(vod_play_url, '第', '弟');
commit;
end MYPROCEDURE;
declare myjob number;
begin
DBMS_JOB.SUBMIT(
job => myjob,
what => 'myprocere;',
next_date => SYSDATE,
interval => 'sysdate+5/(24*60)');
commit;
end;
⑩ 如何將一條sql語句每天定時的執行,執行完了,自動發出簡訊
1 使用sql的job來實現sql的定時執行
2 執行完時,將簡訊信息寫入一張有關的信息表。
3 另外一個簡訊服務程序,不停查找待發簡訊,並發送