こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

SqlServerのスクリプト実行について

Windows2003ServerにてSqlServer2005をバッチファイルから実行する時について質問させてください。

下記の「sql.bat」にて「script.sql」を実行した場合、「log.txt」に出力される内容は'222'をアップデートした結果「(x行処理されました)」のみが出力されますが、'000'や'111'を更新した結果も出力させたい場合、「script.sql」を3分割し、「sql.bat」で3ファイル実行するしかないのでしょうか。

「sql.bat」
sqlcmd -S SERVERNAME -d SCHEMANAME -i c:\script.sql -o c:\log.txt

「script.sql」
update tablename set data1 = 'aaa' where data1 = '000'

update tablename set data1 = 'bbb' where data1 = '111'

update tablename set data1 = 'ccc' where data1 = '222'

投稿日時 - 2013-12-06 10:25:35

QNo.8375176

困ってます

質問者が選んだベストアンサー

こんにちは。
下記のように「script.sql」にあるupdate文ごとに「GO」を付けて実行すればできます。


「script.sql」
update tablename set data1 = 'aaa' where data1 = '000'
GO
update tablename set data1 = 'bbb' where data1 = '111'
GO
update tablename set data1 = 'ccc' where data1 = '222'
GO

投稿日時 - 2013-12-06 17:07:22

お礼

回答ありがとうございます。
やりたいことが実現できました。

投稿日時 - 2013-12-10 10:52:33

ANo.1

このQ&Aは役に立ちましたか?

11人が「このQ&Aが役に立った」と投票しています

-広告-
-広告-

回答(1)

-広告-
-広告-

あなたにオススメの質問

-広告-
-広告-