サーバー上のすべてのUSPをスクリプト化する以下のPowerShellスクリプトをまとめました。PowerShell SQLスクリプトUSPとユーザー
アウトプットを個々のファイルに分割するオプションはありますか?
Get-ChildItem -Path SQLSERVER:\SQL\myserver\Default\Databases\mydb\StoredProcedures\ | %{$_.script() | out-file -Filepath "myfilelocation.sql"}
あなたのパイプを 'Foreach-Object'(%)スクリプトブロックの' Out-File'に置いてみましたか?すなわち '%{$ _。Script()| Out-File ...} ' – Shaneis
@Shaneisありがとうございます。近くなってる。 Out-Fileをパイプに追加しましたが、ファイルが大きくなるにつれてすべてが個別に処理されることがわかりましたが、繰り返して減らすことはできますが、Foreach-Objectを導入して各ファイル。 'Get-ChildItem -Path SQLSERVER:\ SQL \ my server \ Default \ Databases \ mydb \ StoredProcedures \ %{$ _。script()| outfile -Filepath "mylocation _ $(get-date -f yyyyMMdd).sql"} ' –
これは、毎回ファイルを上書きするためです。これらのスクリプトはすばやく完了して、同じ日にすべて終了するようにしてください(うまくいけば)。スクリプティングしているプロシージャーの時間や名前を追加して、ファイル名を一意にし、それがあなたに役立つかどうか確認してください。または、 '.sql"ビットの後に '-Append'を使用してください。 – Shaneis