問題タブ [invoke-sqlcmd]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql-server - 異なるサーバー上の複数のデータベースに対してクエリを実行する
複数のサーバーとデータベースに対してクエリを実行する PowerShell スクリプトに取り組んでいます。サーバーとデータベースをアレイに動的に追加して実行するという考えです。
現在、すべてが組み合わされた最後の部分で立ち往生しています。サーバーは追加できますが、データベースは追加できません。
私が達成しようとしているもの: MFP GUI を使用して PowerShell スクリプトを実行し、複数の MSSQL サーバーに対してクエリを実行します。これらのサーバーにはすべて同一のデータベース (データが異なる) が含まれていますが、データベースの名前Sql_Data-Node1
は 、SqlData-Node2
などと異なります。
私が遭遇した問題: サーバーをアレイに動的に追加することができ、クエリを実行すると適切な応答が得られます。この場合、マスター データベースを使用し、静的 ( -database 'master'
) にしました。データベースで同じことをしようとすると (配列に追加する)、エラーが発生します。
私のコード:
sql-server - sqlcmd / Invoke-SqlCmd で変数をエスケープする
私はpowershellを使用しており、Invoke-SqlCmd
. 変数を SQL に渡すことができます。
これによりhello
、期待どおりに返されます。ただし、等号 ( ) を含む値を持つ変数がある場合=
:
次のエラーが表示されます。
コマンドレットの新しい変数を定義するために使用される形式
Invoke-Sqlcmd
が無効です。新しい変数を定義するには、「var=value」形式を使用してください。
sqlcmd
どちらか、またはInvoke-SqlCmd
値を適切にエスケープする方法についてのドキュメントが見つかりませんでした。
sqlcmd
/に送信された変数をエスケープするにはどうすればよいInvoke-SqlCmd
ですか?
sql-server - Powershell SqlPs モジュールが正しくインポートされない
SQL Server 2012 がインストールされた (かなりきれいな) Windows Server 2008 R2 ビルドがあります。PowerShell (バージョン 3) に問題があります。
Invoke-Sqlcmd コマンドレットを使用しようとしています。ただし、get it を呼び出すと、'Invoke-Sqlcmd' がコマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されないというメッセージが表示されます。
Import-Module SqlPs -Verbose -Force (セキュリティ ポリシーをバイパスして) を実行すると機能します。ただし、これはタブが開いている間だけ持続します。新しいタブを開くと、別のスクリプトを実行するか、Powershell ISE を再度開くと、モジュールをもう一度インポートする必要があります。
なぜこれが起こっているのですか?
powershell - Powershell で使用するディレクトリの一部を指定する sqlcmd を呼び出す
複数のサブディレクトリにある .sql ファイルを個別に実行できる必要があります。このスクリプトは、ディレクトリは同じではなく、サブディレクトリは同じである複数のコンピューターで実行されます。なので、このようにディレクトリを変数として定義できるようにしたいです。
sql-server - バッチ ファイル内の複数の sqlcmd コマンド
バッチ ファイルから一度に実行する複数の sqlcmd コマンドがあります。各ステートメントを個別に実行すると、完全に機能します。しかし、bat ファイルで 5 つの sqlsmd コマンドを指定すると、最初のコマンドのみが実行され、コマンド ライン画面に 1> が表示されても何も起こりません。これを解決するには?
注:各行の前のCALLステートメントが機能しませんでしたそれが私の研究で見つけた唯一の解決策です
私がやっていることの例::