問題タブ [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.
c# - C# での Powershell Sqlcmd ポップアップ
Powershell スクリプト myscript.ps1 を実行する PSHost オブジェクトがあり、その .ps1 スクリプトは必要なことを実行するために sqlcmd.exe を実行しています。空の sqlcmd dos プロンプトが表示されないようにする方法はありますか?
sql-server - SQLServer2005クエリをCSVにエクスポートする方法
SQL Server 2005のデータをCSV形式(引用符で区切って)にエクスポートしたい。複雑なやり方はたくさん考えられますが、正しいやり方でやりたいと思っています。bcpを見てきましたが、フィールドを引用符で囲む方法がわかりません(フィールド値に連結する場合を除きます。これは醜いです)。sqlcmdと-oでできると思いますが、同じ理由で醜いようです。
それを行うbcpの方法はありますか?
それを行うための合理的なsqlcmdの方法はありますか?
Management Studioに組み込まれている、見落としている優れたシンプルなユーティリティはありますか?
sql-server - SQLCMD、コマンドライン変数、およびスクリプト :setvar
SQLCMD.exe を実行し、スクリプト変数にコマンド ライン引数を指定すると、コマンド ラインで指定された値が SQL スクリプト ファイルで定義された値を上書きすることを期待します。
例えば
次の SQL スクリプトがあるとします。
そしてコマンドライン:
出力は次のようになると思います。
バッチスクリプト
ただし、出力は次のとおりです。
SQL スクリプト
これは意図的なものですか、それとも:setvar
SQL スクリプト内のステートメントを削除する必要がありますか?
スクリプトでステートメントを提供した:setvar
ので、SQL Management Studio で SQLCMD モードを使用してスクリプトを編集/テストできますが、テスト環境と運用環境ではコマンドラインからスクリプトを実行できます。
sql - 3GB の SQL ファイル (Microsoft SQL Server) を実行するには?
メモリに収まらない大きな SQL ファイルがあり、Microsoft SQL Server 2008 に対して実行する必要があります。sqlcmd.exe
ツールは常に最初にメモリにロードするようですが、この場合は不可能です。何か案は?
残念ながら、このスクリプトは Red Gate の優れた SQL Data Compare によって生成されているため、分割できません。スクリプト全体が 1 つの大きなトランザクションであり、そのままにしておきたいと思います。データベースの世界では大量のデータを持つことが一般的であるため、巨大なスクリプトを持つことは珍しいことだとは思っていませんでした。スクリプトのサイズは 3 GB です。
sql - Powershell SQLCMD
-v パラメータ変数にスペースがあると、Powershell と SQLCMD で問題が発生し、powershell がコマンドを実行しませんでした。
例えば
誰もこれを以前に経験したことがありますか、または問題を解決する方法を知っていますか?
ありがとう、
B
sql - 実行時に SQL Server クエリ結果から列のデータ型とサイズを表示する
クエリを実行してから、SQL Server 管理スタジオや sqlcmd などを使用して、受信した各列のデータ型とサイズを単純に表示する方法はありますか。
サーバーとクライアントの間でデータの送信が行われるには、この情報が存在する必要があるようです。表示していただけると大変助かります。
ちょっとした背景: 私が質問する理由は、50 行から 5000 行以上のコードを含む無数のレガシー ストアド プロシージャとやり取りする必要があるからです。一時テーブルに出入りする不可解な論理フロー、他のプロシージャ、文字列連結された eval ステートメントなどを試す必要はありません。私は実装についての知識を維持したくありません。単に、それらが機能するときに何を期待するかです。残念ながら、ロジック フローに従うことが、たとえば、管理スタジオ スタジオや .net のネイティブ型からデータ文字列表現の実際の型を推測しようとせずに、正確に何が返されているかを把握する唯一の方法のようです。
明確にするために:テーブルのタイプやそのような静的なものを伝える方法について尋ねているのではありません。sp_help のようなものは役に立たないと確信しています。SQL サーバーの型 (つまり、varchar(25)、int...) が与えられたものであるかどうかを確認する方法を尋ねています。さらに、sprocs の実装を変更することはできないため、ソリューションでそれを考慮してください。どこかで見逃したコマンドがあることを本当に望んでいます。すべてに感謝します。
更新 私が本当に求めているのは、結果セットが一時テーブルを使用したクエリから発生した場合に、結果セットのスキーマを取得する方法だと思います。これが不可能であることは理解していますが、データが送信されているため、その結論にはあまり意味がありません。問題を引き起こすストアド プロシージャの例を次に示します。
database - sqlcmdを使用して大きな.sqlファイルからデータベースを復元しようとしています-エラー
大きなファイルから次のコマンドを使用してデータベースデータを復元しようとしています.sql
次のエラーが発生します。
ファイルを開くことができません。十分なメモリがありません。
sql - SQLCMD.EXE は醜いレポートを生成します。それをフォーマットする方法は?
次のようなSQLクエリを実行するためにバッチを実行しました
2 つのテーブルを表示し、ある種の「P」不要な文字を含む醜いレポートを生成します...以下を参照してください
また、次のクエリでこの手順から1つのテーブルを生成しようとしました
しかし、同様の醜いレポートを受け取りました:
レポートのレイアウトの書式を変更することはできますか? もっと美しくするには?
sql-server - レコードを挿入するときは、SETQUOTEDIDENTIFIERをオンにする必要があります
私はSQLServer2005でかなり奇妙な問題に悩まされています。
「レコードを挿入するときにSETQUOTEDIDENTIFIERをオンにする必要があります」
(SPとして使用)特定のテーブルに。これは以前は正常に機能していましたが、このエラーをランダムにスローしています。
SPを確認しました。内部でSETQUOTEDIDENTIFIER設定を手動で指定しなかったため、デフォルトでオンにする必要があります。
誰かが問題の可能性を明確にすることができますか?
テーブルは、SET QUOTED IDENTIFIER ONで作成する必要がありますか?テーブルスクリプトはまだチェックしていません。
この問題は、日付列(modifiedAt)で挿入または更新を実行しているSPでのみ発生することを確認しました...サンプル値は「2009-08-1006:43:59:447」です。
渡された値に問題はありますか?
sql - 次のバッチで「エラーが発生した場合」に続行するようにsqlcmdに指示するにはどうすればよいですか?
これを達成する方法についてのアイデアはありますか?