問題タブ [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 - BAT ファイルを使用してスクリプトを実行するにはどうすればよいですか?
BAT ファイルで SQL Server スクリプトを開きたいと考えています。現在、SQLファイルに次のコードがあります。
この SQL ファイルを BAT ファイルから開くにはどうすればよいですか?
私は現在、次のように実行しようとしています:
OSQL は BINN ディレクトリに存在しません。
sql-server - SQLCMD クエリでの二重引用符の使用
SQLCMD を介して次のコマンドを発行したいと思います。
若干の注意点はありますが…
- データベース名は動的です
- コマンド (BuildForge) を実行しているプログラムは、単一引用符で囲まれた変数を置き換えません。
だから、私は使用できません:
一重引用符でリテラル ${db_name} を使用するためです。私も使用できません:
二重引用符の最初と最後で SQLCMD がつまずくためです。
スクリプトを作成してデータベース名のパラメーターを渡すことができることはわかっていますが、スクリプトを使用せずに 1 つのコマンド ラインでこれを行う方法はありますか? 二重引用符などをエスケープする方法はありますか? 文字列を正しく構築できる BuildForge 構文はありますか?
ありがとう!
sql - SQLCMD: 変数を要求しますか?
Oracle のバックグラウンドを持っているため、Oracle の SQLPlus では変数を指定できます。変数が設定されていない場合は、値を指定するよう求められます。
$([var_name]) 構文を使用して、SQLCMD を使用しています。SSMS SQLCMD モードでは、次のようになります。
致命的なスクリプト エラーが発生しました。
変数 tbl_name が定義されていません。
...実行しようとしている場合:
SQLCMD は SQLPlus と同じ機能を提供しますか? もしそうなら、私は何を間違っていますか?
sql - ターゲットが dbproj である Visual Studio 2010 データベース エディションのスキーマ比較
Visual Studio 2010 データベース エディションを使用しており、SQL データベース インスタンスに対してスキーマ比較を実行して、プロジェクト (dbproj) にまだないデータベース上の新しいオブジェクトを同期しています。私のソリューションには、データベース参照を介して相互に参照するプロジェクトが多数含まれています。スキーマから更新されたものをターゲット プロジェクトと比較して書き込むと、他のプロジェクトのオブジェクトへの参照はすべてハード参照として追加され、データベース参照を追加するときに設定される sqlcmd 変数を使用しません。
これにより、sqlcmd 変数のハード参照を手動で交換するまで、ソリューションに警告とエラーが発生します。プロジェクトを通じてすべてのハード参照を取得するオプションがあるデータベース参照を再作成できることがわかりましたが、これはまだ面倒です。私のプロジェクト用に定義された既存の sqlCmd 変数のセットを使用して、変数参照を使用して更新がプロジェクトに書き込まれるようにする方法はありますか?
sql - スクリプトで SQLCMD モードを自動的に強制することは可能ですか?
私たちは Visual Studio Database Professional を使用しており、展開中に環境を区別するために SQLCMD 変数を多用しています。
コンテキストの設定に使用できるディレクティブがいくつかあることは知っています (サーバー名の :connect など)。スクリプト内で SQLCMD モードを強制的に実行する方法はありますか? 私たちの展開プロセスの一部は、DBA にスクリプトを調べて実行させることです。これは優れたセーフティ ネットになります (したがって、実行モードを SQLCMD に設定するよう DBA に思い出させる必要はありません)。
powershell - SqlCmdを使用したPowershell Invoke-Expression
使用Invoke-Expression
sqlcmd -i script.sql
すると、返された最初の 2 行のみが表示されるようです。
Query Analyzer で実行すると、次のスクリプトが返されます。
ただし、PowerShell からは次の情報しか得られません。
まだ、すべてが実行されています。これは、結果をいじってみるとわかります。どうしてこれなの?
sql-server-2005 - バッチファイルでのSQLCMDの使用
こんにちはすべて私はフォルダに存在するSQLファイルのセットを読み取ってからSQLCMDユーティリティを使用してそれらを実行する必要があるバッチスクリプトを書いています。
実行しようとすると、出力ファイルが作成されません。どこが間違っているのか、スクリプトをデバッグする方法がわかりません。誰かがスクリプトを手伝ってくれますか?
sql - .sdfデータベースのアップグレードスクリプトを作成して実行するにはどうすればよいですか?
.sdfデータベースのアップグレードスクリプトを作成して実行するにはどうすればよいですか?sqlcmdはそれを行うことができますか?データベースファイルのバージョンをアップグレードしようとはしていません。その中のスキーマとデータをアップグレードしようとしています。
nant - NAnt、sqlcmd.exe、およびエラー コード
エラーが発生したときに NAnt にビルドを中止させることができないようです。多くのsqlcmd.exe実行の 1 つを次に示します。
このステップに到達すると、(この場合は) カンマがないためにエラーが発生します。出力は次のとおりです。
かなり厄介なエラーですが、sqlcmd.exeはリターン コードを 0 に設定しているようです。
コンマがないときにスクリプトが中止されるようにするためのアイデアはありますか?
powershell - PowerShell スクリプト内で SqlCmd にパスを渡す
sqlcmd.exe を実行して SQL スクリプトを実行する powershell スクリプトを作成しようとしています。スクリプトには、sqlcmd の -v スイッチを介してコマンド ラインで渡したい SQLCMD 変数が含まれています。問題は、変数の 1 つの値としてパスを渡すと、PowerShell が奇妙なことを行っているため、SQL スクリプトが失敗することです。
たとえば、私は呼び出しています:
実行すると、次のようなエラーが表示されます。
$path
私が試した、またはMyVariablePath=$path
問題を解決した二重引用符または単一引用符の量はありません。
これを行う必要がある方法の簡単な標準的な例を誰かが提供できますか?