Powershellを使いこなすことをゆっくりと学んでいて、初心者でも簡単にしてください。私は、いくつかのExcelファイルから挿入ステートメントを生成し、それを個々のテキストファイルに保存するPowershellスクリプトを作成しました。 Powershellを使ってSQL Server上のテキストファイルを実行するにはどうすればよいですか?Powershell:SQL Server上で複数のtxtファイルを実行するには
1
A
答えて
0
あなたのご意見は本当に非常に役に立ちました。私は混乱を避けるために、私は
#Get list of files
$Files = Get-ChildItem 'C:\Users\Me\Documents\Test\*.txt'
try {
$Filename = $File.BaseName
foreach ($file in $files) {
Invoke-sqlcmd -ServerInstance "ServerName" -Database "Test" -InputFile $file -ErrorAction Stop
Write-Host -ForegroundColor Green "EXECUTED SuCCESSFULLY: " $filename
Move-Item $File "C:\Users\Me\Documents\Test\Executed"
}
}
catch {
Write-Host -ForegroundColor RED "FAILED TO EXECUTE: " $filename
}
@ShawnMeltonあなたの由来この方法を利用した私のTXTファイルにGOステートメントを持っていないので、私は別々のフォルダにファイルを実行し、すべて正常に転送しました。したがって、実行されず実行されなかったスクリプトは、すべてメインフォルダに残されます。
1
これは、テキストファイルにあるクエリに基づいています。それらにGO
トランザクションターミネータがある場合、.NETクライアントSystem.Data.SqlClient
は正しい構文としてそのコマンドを受け入れないため、SMOを使用することに制限されています。厳密にはSSMSの終端文字であり、真のSQL構文ではありません。実際に
私はあなたがこのような何かを行うことができGO
を処理するために、クライアントの要求を持っていた:
$dbServer = MyServer
$ScriptDirectory = 'C:\scripts'
Import-Module SQLPS
$srv = New-Object Microsoft.SqlServer.Management.Smo.Server $dbServer
try {
$file = dir $ScriptDirectory
foreach ($f in $file) {
$s = Get-Content $f -Raw
$srv.ConnectionContext.ExecuteNonQuery($s);
}
}
catch {
$error[0].Exception
}
あなたはGO
文で対処しなければならないと.NETを使用しない場合方法you can check out an article published on SQLShack。接続の作成方法と実行方法について説明し、SQL ServerでPSを使用する方法についてもう少し触れます。
関連する問題
- 1. VB.NET TXTファイル - 複数の修飾行をTXTから取得する - > 1つのSQL Server行
- 2. 複数の.txtファイルをFTP経由でサーバーにアップロードするサーバー上の1つのファイルに複数の.txtファイルをアップロードする
- 3. 複数の異なる.txtファイルをフォルダからSQL Serverにインポートする
- 4. Rに複数の.txtファイルをインポートし、実際のデータ行にスキップ
- 5. Windowsバッチで実行されるexeファイルにtxtファイルを実行する
- 6. のPython-複数のtxtファイル
- 7. 複数のリモートマシン上でシェルスクリプトを実行
- 8. 複数の.txtファイルをMySQLでロード
- 9. MYSQLの行を複数のtxtファイルにエクスポート
- 10. SQL Serverは複数のコマンドを同時に実行します
- 11. SQL Serverの複数列(10以上)の重複行の数
- 12. 出力を複数のtxtファイルに保存する方法は?
- 13. 複数のRTFファイルをTXTファイルに変換する方法
- 14. SQL Serverで複数の条件を実行する方法
- 15. Pythonで複数の部分に.txtファイルを分割する
- 16. PHPスクリプトで.txtファイルの複数の行がチェックされない
- 17. 一度に複数のserverspecファイルを実行するには?
- 18. 複数の.txtファイルから最後の6行を削除
- 19. SQL Serverでalter table alter columnステートメントを複数回実行する
- 20. Spring XDは複数のコンテナ上でモジュールを実行します
- 21. 複数の実行ファイルを実行するMPI通信
- 22. 複数行の.txtファイルで文字列操作を使用する方法
- 23. 複数のC++ファイルを.txtファイルでコンパイルしますか?
- 24. .txtファイルでスクリプトを複数回実行し、各出力を単一テーブルのrに保存します
- 25. C#複数のテキストボックスを1つの.txtファイルに保存する
- 26. クラスタ上で複数のparpoolジョブを実行する
- 27. 実行プロセスを別のTXTファイルに表示する自動ホットキー
- 28. 複数のファイルをGluon ShareService(画像とtxt)で共有する
- 29. 同じtxtファイルの複数の値
- 30. SQL Server - 複数の列を複数行に変換する
powershellは必要ですか? Windowsのコマンドラインから簡単に達成できます。 – qxg
はい@DaveSexton –