0

すべて同じデータベースを指すバッチファイルから複数のsqlcmdウィンドウを起動するにはどうすればよいですか?たとえば、.batファイルを実行するときに、渡したパラメーター(例:5)に基づいてN個のウィンドウを生成するようにします。これらの5つのウィンドウはそれぞれデスクトップで開き、すべて同じデータベースに接続する必要があります。それが私が最初にやりたいことです。それが機能したら、5つのウィンドウのそれぞれで、挿入、クエリ、更新、削除、ストアドプロシージャの呼び出しを実行する、個別の.sqlスクリプトを実行する必要があります。基本的に、デバッグ作業に役立つ本番環境をエミュレートします。 (ユーザー負荷の下で)。実行中にsqlcmdウィンドウで各.sqlコマンドの出力が飛んでいくのを確認したいと思います。

私が見つけた:

http://hammerora.sourceforge.net/

これはTPC-Cの負荷テストに焦点を当てたGUIツールですが、私が望んでいるものとは異なります。小規模なバッチファイル(たとえば、最大20人の同時ユーザー)によってのみ駆動されるのと同様の概念であるため、これを取り上げます。

私は90年代後半にOracleスケーラビリティテストのためにこのようなシステムを作成しましたが、それ以来データベースビジネスから離れており、その方法とSQLServerをサポートするために必要な違いを思い出せません。したがって、Oracleで可能であることはわかっていますが、コマンドラインツールとスクリプト機能を備えたSQLServerについてはよくわかりません。

これを機能させるために何が必要かについて誰かが何か情報を持っていますか?

元。launch3users.bat次のようなファイルを作成します。

sqlcmd -d MichaelTest -run this 1.sql file
Pause

sqlcmd -d MichaelTest -run this 2.sql file
Pause

sqlcmd -d MichaelTest -run this 3.sql file
Pause

ここで、それぞれがsqlcmdウィンドウを生成し、DML操作を実行したりストアドプロシージャを呼び出したりできる適切な.sqlスクリプトを実行します。

ありがとう、マイケル

4

1 に答える 1

2

コマンドの先頭に「start」を追加するだけです。

start sqlcmd -d MichaelTest -i 1.sql

start sqlcmd -d MichaelTest -i 2.sql

start sqlcmd -d MichaelTest -i 3.sql
于 2012-08-10T21:49:39.437 に答える