問題タブ [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 - SQLスクリプト変数のデフォルト値
test.sqlなどのスクリプトファイルがあります。:r test.sqlを使用して、sqlcmdモードでcaller.sqlなどの別のスクリプトからこれを呼び出したいと思います。これは正常に機能しますが、test.sqlでスクリプト変数を使用したいと思います。caller.sqlからtest.sqlを呼び出すと、スクリプト変数を設定でき、すべて問題ありません。ただし、スクリプト値にデフォルト値を使用して、呼び出し元が変数を設定しない場合、またはtest.sqlを(caller.sqlからではなく)直接実行した場合に、スクリプト変数がデフォルトで設定値になるようにします。
私は次のようなことを試しました
しかし、次のメッセージが表示されます。致命的なスクリプトエラーが発生しました。可変グリップは定義されていません。
呼び出し元によって渡されるかどうかにかかわらず、「グリップ」に対処できるように、test.sqlには何が必要ですか?MSSQL2005を使用しています
sql-server-2008 - SQL Server 2008-cmdを使用して、ヘッダー付きで.csvに出力します
私は非常に簡単な質問があります(そしてこれらは通常、私の髪を引き裂くのにほとんどの時間を費やすものです)。バッチファイルを使用して、バッチと同じディレクトリにあるすべての.sqlクエリを実行し、そのすべての結果をさまざまな.csvファイルに保存しています。
これが私のコードです:
テストとして、次のクエリを実行します。
出力:
これは、2つのことを除いて、正常に機能します。まず、列ヘッダーも出力する必要があります。そこで、「-h -1」パラメータを削除すると、次のようになります。
これは、見出しとデータの最初の行の間に水平方向のルール「------」が必要ないという事実を除いて、すばらしいことです。
また、「(10行が影響を受ける)」行を出力したくありません。
誰かが私がこれを達成する方法を知っていますか?
ありがとう
カール
sql - SQLスクリプトを実行するbatファイルを書くのに助けが必要です(SQL Server 2008と別の3つのファイル。?
これらは以前に尋ねられたと確信していますが、バッチファイルを作成する方法を明確な指示が見つからない場合は、「データベースの更新」と呼んでください。このバッチファイルは
別のフォルダーにある SQL スクリプトを実行します。別の 3 つのバット ファイルを実行します。
それを行う方法の簡単な例はありますか?前にやったことがない
編集済み
私はこれを行うことができますか?
エラーが発生します:
「GO」が内部外部コマンドとして認識されない
ご意見ありがとうございます
sql - sqlcmdで呼び出されるSQLServerスクリプトにパラメーターを渡す方法は?
SQL Serverスクリプトにパラメーターを渡すことは可能ですか?データベースを作成するスクリプトがあります。sqlcmdを使用してバッチファイルから呼び出されます。そのSQLスクリプトの一部は次のとおりです。
'C:\ dev \ SAMPLE.mdf'と'C:\ dev \ SAMPLE_log.ldf'をハードコーディングする必要がないように、データベースとログのファイル名を渡せるようにしたい。
これを行う方法はありますか?Microsoft SQL Server2008Expressを実行しています。さらに情報が必要な場合はお知らせください。
sql-server - SQLCMD で列区切りとして TAB を使用する方法
SQLCMD は列の区切りを指定する -s パラメータをサポートしていますが、タブ (CHAR(9)) 文字を表す方法がわかりませんでした。次のことを試しましたが、どちらも機能しません。
SQLCMDでこれを行う方法はありますか?
sql - バッチファイルのSQLCMD-すべての出力を1つのファイルに強制します
データベースに対してフォルダ内のすべてのSQLスクリプトをコンパイルするためのバッチファイルがあります。問題は、数千のスクリプトがあり、各スクリプトの出力ファイルを作成することです。
エラーのチェックが難しくなり、クリーンアップを行うことが多くなります。すべての結果を1つのファイルに出力する方法はありますか?
使用するスクリプトは次のとおりです。
for %%f in (.sql) do sqlcmd -Sservername -i"%%f" -o"%%f.txt" -Uusername -Ppassword -ddatabasename
よろしく、アルバート
sql-server - SQLCMD.EXEを使用したCSVデータのエクスポート
SQLServerからCSV形式にデータをエクスポートしようとしています。これを行うためのバットタスクがあり、定期的に実行されます。コマンドは次のとおりです。
SQLファイルは、ビューからの単なるSELECT*です。
これは、一部の行のデータにコンマが含まれていることを除いて機能するため、値を引用符で囲む必要があります。列区切り文字を「'、'」に変更することもできますが、データ内の一重引用符をエスケープするにはSQLServerが必要です。
残念ながら、区切り文字を別の文字に変更しても、100%の場合、フィールドの1つに、あらゆる種類の奇妙で素晴らしい文字を含む別のアプリケーションからのシリアル化されたデータが含まれているため、問題が解決する可能性はありません。
標準の引用されたCSVデータを取得する方法はありますか?
sql-server - 変数(-v)がコマンドライン(SQLCMD)で定義されているかどうかを確認する方法
SQLCMDを使用してコマンドラインで変数が定義されているかどうかを確認する方法はありますか?
これが私のコマンドラインです:
ProdToTest_DB.sql内で、ある種の条件付きIFを設定して、変数が存在しないかどうかを確認し、存在しない場合は定義したいと思います。
コマンドラインとSSMS内の両方からスクリプトを実行できるようにしたい。
前もって感謝します。
sql-server - 「SQLCMD-L」は失敗します-なぜですか?
SQLServer2008R2のインスタンスとSQLServerExpress2008のインスタンスが2つあります。SQLCMD
などは機能します[1]。
しかし、「SQLCMD -L
」と「OSQL -L
」は失敗します[2]。
なんで?
SQLCMDの使用に欠けているものは何ですか?
SQLCMDを使用してサーバーを取得する方法は?
[1]SQLCMDのテスト結果
[2]
SQLCMD -L
サーバー:
OSQL -L
サーバー:-なし-
更新:
SQLBrowserを起動した後、次のようになりました。
OSQL -L
サーバー:(
ローカル)
PBLACK
PBLACK \ SQL2008R2
PBLACK \ SQLEXPRESSSQLCMD -L
サーバー:
PBLACK
PBLACK \ SQL2008R2
PBLACK \ SQLEXPRESS
OSQLは(ローカル)を列挙するのにSQLCMDは列挙しないのはなぜですか?
SQLEXPRESS(壊れている、起動できない)およびSQL2008R2インスタンスが実行されていない(停止している)-なぜそれらが列挙されているのですか?
実行中のSQLServerインスタンスのみを公開することは可能ですか?
c# - SQL Server: BCP vs SQLCMD - どちらがより効率的ですか?
あるデータベースから SQL Server データをエクスポートし、別のデータベースにインポートするプログラムを c# で作成しています。これら 2 つのサーバーは接続されていないため、bcp などの方法を選択する必要があります。
- これら2つの違いは何ですか?一方は他方よりも効率的ですか?そして、どのシナリオで?
- それぞれの既知の制限/互換性の問題は何ですか?
- SQL Server からデータをファイルにエクスポートしてインポートする他の方法はありますか?
- これらのファイルを後で圧縮するのではなく、コマンド ライン スイッチを使用して作成すると同時に、これらのファイルの圧縮を有効にすることはできますか?
- この決定を行う際に重要と思われるその他の側面があれば含めてください。
前もって感謝します。