當前位置:首頁 » 編程語言 » sql腳本批量

sql腳本批量

發布時間: 2023-08-09 12:15:51

sql server自動生成批量執行SQL腳本的批處理

場景:

DBA那邊給我導出了所有的存儲 函數等等對象的創建腳本 有上千個文件

現在需要將這些對象創建腳本導入到另外一個庫 如何解決呢?

手動一個個執行顯然不太現實

於是手動寫了一個批處理 將所有的文件形成一個 SQL的腳本 最後以@生成的 SQL腳本方式導仔派賀入到目標庫中

OS環境:WINDOWS xp

腳本內容如下:

@echo off if exist list sql del list sql /q :input cls set input=: set /p input= 請輸入要進念派行判斷的路徑 set "input=%input:"=%" :: 上面這句為判斷%input%中是否存在引號 有則剔除 if "%input%"==":" goto input if not exist "%input%" goto input for /f "delims=" %%i in ( dir /b /a d /s "%input%" ) do echo @@%%~fnxi>>list sql if not exist list sql goto no_file start list sql exit :no_file cls echo %cur_dir% 出現錯誤 未成功生成list sql腳本! pause

使用:

另存為 BAT類型文件後 雙擊執行

輸入你腳本的路徑:

如我的E盤CRY文件夾下 有如下類型的文件:

TEST PRC

TEST FNC(有子文件夾 )

TEST VW

執行該批處理後 最後生成的list sql腳本文件內容如下(執行完批處理後會用默認的編輯器自動打開該文件):

@@E:cryTEST PRC

@@E:cry TEST FNC

@@E:cryTEST VW

打開SQLPLUS 以指定用戶登錄資料庫 然後執行: (我的腳本文件羨磨生成在d盤)

@D:list sql

這樣所有的對象就會自動在指定用戶下生成

lishixin/Article/program/SQLServer/201311/22286

㈡ 如何用SQLserver批量打開或運行腳本

使用SQLCMD在SQLServer上執行多個腳本

第一步:先創建一個在C盤下的文件夾:C:\Scripts。然後把腳本存放到這個文件夾中:

腳本1:CREATE_DB.sql

/* SCRIPT: CREATE_DB.sql */
/* 創建TestDB資料庫 */

-- This is the main caller for each script
SET NOCOUNT ON
GO

PRINT '開始創建TestDB資料庫'
IF EXISTS (SELECT 1 FROM SYS.DATABASES WHERE NAME = 'TestDB')
DROP DATABASE TestDB
GO
CREATE DATABASE TestDB
GO
:On Error exit
:r c:\Scripts\CREATE_TABLES.sql
:r c:\Scripts\TABLE_INSERTS.sql
:r c:\Scripts\CREATE_INDEXES.sql
:r c:\Scripts\CREATE_PROCEDURES.sql
PRINT '創建完畢'
GO

㈢ 請教高手:DB2 SQL腳本批量執行如何保存日誌問題

可以在命令編輯器或者Windows 的DB2 命令窗口或者 linux 的shell 中執行SQL 腳本。在windows 的DB2 命令窗口或者 linux 的shell 中執行SQL語句,可以使用下面的命令執行script1.sql腳本:
db2 -t -v -f script1.sql -z script1.log
或者:
db2 –tvf script1.sql –z script1.log
在上面的命令中,
-t 表示語句使用默認的語句終結符——分號;
-v 表示使用冗長模式,這樣 DB2 會顯示每一條正在執行命令的信息;
-f 表示其後就是腳本文件;
-z 表示其後的信息記錄文件用於記錄屏幕的輸出,方便以後的分析(這是可選的,但我們建議使用該選項)。
當使用了-t選項而沒有標明語句終結符,則分號(;)會默認為語句的終結符。有時可能會出現使用另外的終結符的情況,例如用SQL PL 編寫的的腳本使用其它的符號而不是默認的分號,因為分號在SQL PL 是用於定義資料庫對象過程中的語句結束。

㈣ 進入PLSQL的命令窗口,輸入SQL語句後,應該如何執行

1、首先在電腦中,找到並登錄PLSQL,如下圖所示。

㈤ 用批處理執行SQL文件的腳本應該怎麼寫

步驟:(1) 創建一個批處理文件:打開記事本,創建資料庫連接信息(例如,server name,username,password,databasename等)以及要執行的*.sql腳本名稱。具體語法參考下文"osql 實用工具" 。 將文件的擴展名改為.bat 並保存。

示例1:指定待執行sql 文件的相對路徑

osql -S admin\admin -U sa -P sa -d TestDB -i c:\test.sql
pause

示例2: 待執行文件與bat文件在同一個目錄,指定相對路徑

set localdir=%~dp0
osql -S (local) -U sa -P sa -d Test -i %localdir%\test1.sql
osql -S (local) -U sa -P sa -d Test -i %localdir%\test2.sql
osql -S (local) -U sa -P sa -d Test -i %localdir%\test3.sql
pause

(2) 創建需要執行的sql 腳本, test.sql,test2.sql 和test3.sql, 並放在步驟(1)示例1中指定的位置。本例為c:\ 根目錄。如果用示例2,將待執行的sql和bat文件放在同一個目錄下。

(3) 雙擊*.bat 文件並查看運行結果。

㈥ 如何批量執行某個文件夾下所有的 sql腳本

1,先把sql腳本名字全部取出來
2,追加到一個文本文件里名字 yy.sql,比如 xx1.sql 就寫
@@xx1.sql
@@xx2.sql
3,在文件目錄下新建一個bat文件內容如下
sqlplus user/pwd@sid @yy.sql >tt.log
4,雙擊bat文件運行,就可以批量執行
注意,每個sql腳本文件裡面的最後一行必須有 /

㈦ sql弄成一次性執行通過腳本

1、把一個個的sql語句都寫在存儲過程裡面。
2、把一個個的sql語句都寫在txt文件裡面,然後運行就可以了。

㈧ 項目實施時,SQL更新腳本批量執行方式

1、打開資料庫控制台(sql server 2005打開」sql server manager studio「使用sa登錄。sql server2000打開企業管理器使用sa登錄)。

熱點內容
台式機忘記開機密碼怎麼辦 發布:2025-02-06 11:58:01 瀏覽:868
android刷新按鈕 發布:2025-02-06 11:57:17 瀏覽:585
存儲過程有輸入參數和輸出參數 發布:2025-02-06 11:55:32 瀏覽:96
成績評選演算法 發布:2025-02-06 11:42:51 瀏覽:994
資料庫測試數據 發布:2025-02-06 11:31:05 瀏覽:821
球頭軸編程 發布:2025-02-06 11:29:36 瀏覽:280
為什麼安卓系統不能收縮許可權 發布:2025-02-06 11:27:58 瀏覽:730
演算法4視頻 發布:2025-02-06 11:19:20 瀏覽:934
51內置音效卡需要什麼主機配置 發布:2025-02-06 11:18:33 瀏覽:838
防針刺傷的物品配置有哪些 發布:2025-02-06 11:11:25 瀏覽:670