打開查詢分析器。
連接到某資料庫。
點擊打開,找到SQL腳本,打開;或直接編輯窗口中編輯新腳本。
點擊執行查詢按扭或使用快捷鍵F5執行當前窗口中全部腳本,也可選中腳本中部份語句然後點擊執行按扭或F5有選擇地執行腳本語句。
❷ 怎樣自動執行一段SQL語句
怎樣自動執行一段SQL語句
Oracle下:
1.新增一個批處理文件:如a.bat
2.新增一個SQL腳本文件:如a.sql
3.a.bat中輸入:sqlplus 用戶名/密碼 @C:\a.sql(假設a.sql在c:盤根目錄下)
4.然後運行這個批處理,就可以執行這個sql腳本了.
❸ sql server怎麼自動執行存儲過程
作業里定時執行存儲過程定時作業的制定
企業管理器
--管理
--SQL
Server代理
--右鍵作業
--新建作業
--"常規"項中輸入作業名稱
--"步驟"項
--新建
--"步驟名"中輸入步驟名
--"類型"中選擇"Transact-SQL
腳本(TSQL)"
--"資料庫"選擇執行命令的資料庫
--"命令"中輸入要執行的語句:
EXEC
存儲過程名
...
--該存儲過程用於創建表
--確定
--"調度"項
--新建調度
--"名稱"中輸入調度名稱
--"調度類型"中選擇你的作業執行安排
--如果選擇"反復出現"
--點"更改"來設置你的時間安排
然後將SQL
Agent服務啟動,並設置為自動啟動,否則你的作業不會被執行
設置方法:
我的電腦--控制面板--管理工具--服務--右鍵
SQLSERVERAGENT--屬性--啟動類型--選擇"自動啟動"--確定.
❹ 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腳本
sql腳本要在dbms里執行
比如oracle,你可以在sqlplus里,或pl/sql developer里執行
直接復制sql語句過去,回車就好了(注意帶分號)
如果你的sql是一個sql文件(*.sql)
可以使用start或@ 然後跟文件的路徑(c:/a.sql) 回車
❻ 如何讓SQL Server資料庫自動執行管理任務
1、桌面版的SQL Server沒有這個功能。桌面版的意思就是安裝在我們平常娛樂工作用的電腦上的。
2、伺服器版的SQL Server利用它的「SQL Server代理」功能可以「定時」、「隔時」的執行SQL語句,或運行指定的存儲過程,還可以執行「維護計劃」等。提示的是,SQL Server代理對應的服務必須處於正常的運行狀態(默認安裝後,是開機自動運行的)。
❼ 如何對SQL中的所有資料庫執行腳本
以sqlserver為例
首先創建一張表
createtabledatabase_info
(databasenamevarchar(50));
然後,將所有資料庫名的信息錄入到這張表中。這步可參考sqlserver中都有哪些資料庫。
然後,執行存儲過程:
declare@sqlnvarchar(4000),@iint,@maxdatabase
select@maxdatabase=count(*)fromdatabase_info
set@i=1
while@i<=@maxdatabase
begin
set@sql='update'
select@sql=sql+datebase_namefromdatabase_infowhereid=@i
select@sql=sql+'.master.dbo.tbl1settbl1.aaa=tbl2.bbbfrom'
select@sql=sql+datebase_namefromdatabase_infowhereid=@i
eselect@sql=sql+'.master.dbo.tbl2wheretbl1.ccc=tbl2.ccc'
execsp_executesql@sql
set@i=@i+1
end
注意事項:其中update語句,可根據自己的實際需要進行修改。
❽ mysqlmp有幾種自動執行的方法
把ip改成localhost就可以的 如果裝了navicate那就更簡單了 先連接上資料庫,選中資料庫 再選擇轉儲sql 就好了方法二 進入cmd (注意在os cmd中 而不是在mysql中) =================== 一.導出資料庫(sql腳本) mysqlmp -u 用戶名 -p 資料庫名 > 導出的文件名 mysqlmp -u root -p db_name > test_db.sql 二.mysql導出資料庫一個表 mysqlmp -u 用戶名 -p 資料庫名 表名> 導出的文件名 mysqlmp -u wcnc -p test_db users> test_users.sql (結尾沒有分號)方法三啟動mysql服務 /etc/init.d/mysql start導出整個資料庫 mysqlmp dbname > c:mydb.sql -u root -p 導入資料庫 source mydb.sqlmysql -u用戶名 -p 資料庫名 資料庫名.sql更詳細的導入資料庫教程 二.一. 導出sql腳本 在原資料庫伺服器上,可以用php教程myadmin工具,或者mysqlmp(mysqlmp命令位於mysql/bin/目錄中)命令行,導出sql腳本。 二.一.一 用phpmyadmin工具 導出選項中,選擇導出"結構"和"數據",不要添加"drop database"和"drop table"選項。 選中"另存為文件"選項,如果數據比較多,可以選中"gzipped"選項。 將導出的sql文件保存下來。二.一.二 用mysqlmp命令行命令格式mysqlmp -u用戶名 -p 資料庫名 > 資料庫名.sql範例:mysqlmp -uroot -p abc > abc.sql (導出資料庫abc到abc.sql文件)提示輸入密碼時,輸入該資料庫用戶名的密碼。二.二. 創建空的資料庫 通過主控界面/控制面板,創建一個資料庫。假設資料庫名為abc,資料庫全權用戶為abc_f。二.三. 將sql腳本導入執行 同樣是兩種方法,一種用phpmyadmin(mysql資料庫管理)工具,或者mysql命令行。 二.三.一 用phpmyadmin工具 從控制面板,選擇創建的空資料庫,點"管理",進入管理工具頁面。 在"sql"菜單中,瀏覽選擇剛才導出的sql文件,點擊"執行"以上載並執行。注意:phpmyadmin對上載的文件大小有限制,php本身對上載文件大小也有限制,如果原始sql文件 比較大,可以先用gzip對它進行壓縮,對於sql文件這樣的文本文件,可獲得一:5或更高的壓縮率。 gzip使用方法: # gzip xxxxx.sql得到xxxxx.sql.gz文件。二.三.二 用mysql命令行命令格式mysql -u用戶名 -p 資料庫名 < 資料庫名.sql範例:mysql -uabc_f -p abc < abc.sql (導入資料庫abc從abc.sql文件)提示輸入密碼時,輸入該資料庫用戶名的密碼
❾ 請教,如何定時自動執行SQL
--"類型"中選擇"Transact-SQL 腳本(TSQL)" --"資料庫"選擇執行命令的資料庫 --"命令"中輸入要執行的語句: Update City Set IsAccess=0--確定--"調度"項--新建調度--"名稱"中輸入調度名稱 --"調度類型"中選擇你的作業執行安排--定為每天調度一次,時間為18:40即可 --如果選擇"反復出現" --點"更改"來設置你的時間安排 然後將SQL Agent服務啟動,並設置為自動啟動,否則你的作業不會被執行設置方法:我的電腦--控制面板--管理工具--服務--右鍵 SQLSERVERAGENT--屬性--啟動類型--選擇"自動啟動"--確定.
❿ sql server 2000如何執行sql腳本
實現的方法和詳細的操作步驟如下:
1、第一步,打開SQL
Server軟體,然後選擇圖中「資料庫」選項前面的「 +」號以展開資料庫,如下圖所示,然後進入下一步。