2013-04-24 106 views
-1

我有10個sql腳本躺在10個SVN網址上。如何從url執行sql腳本?

我想編寫一個執行這10個svn sql腳本的sql腳本。

例如,http://svn/s1.sqlhttp://svn/s1.sq2,....

我想寫一個SQL它確實像execute http://svn/s1.sqlexecute http://svn/s2.sql

我該怎麼辦呢?

+2

您需要編寫一個程序來下載文件,逐行讀取它們,將它們附加到內部並執行整個批次 – LuigiEdlCarno 2013-04-24 09:41:05

+0

@LuigiEdlCarno我無法直接在sql中執行此操作嗎? – 2013-04-24 09:41:51

+3

不是我所知道的。如果你可以通過在你的瀏覽器中調用一個URL來執行SQL腳本,那麼這將是一個巨大的安全漏洞。 – LuigiEdlCarno 2013-04-24 09:43:10

回答

0

可以使用sqlcmd

首先創建一個批處理文件並粘貼到該批處理文件下面的編碼運行所有的.SQL文件:

sqlcmd -S ServerName -U Username -P password -i c:\s1.sql -o C:\s1.txt 
sqlcmd -S ServerName -U Username -P password -i c:\s2.sql -o C:\s2.txt 
sqlcmd -S ServerName -U Username -P password -i c:\s3.sql -o C:\s3.txt 
sqlcmd -S ServerName -U Username -P password -i c:\s4.sql -o C:\s4.txt 

從SQL Server執行批處理文件象下面這樣。 。

EXEC master..xp_CMDShell 'c:filename.bat' 

您也可以參考運行批處理文件以下鏈接..

SQL SERVER – Running Batch File Using T-SQL – xp_cmdshell bat file

0

您需要編寫一個下載文件的程序,逐行讀取它們,將它們附加到內部並執行整個批處理。

這將是一個巨大的安全漏洞,如果您可以通過在瀏覽器中調用url來執行SQL腳本。