問題タブ [sp-who2]

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.

0 投票する
2 に答える
27929 参照

sql-server - sp_who2 BlkBy スリープ中のプロセスがコマンドを待機中

sp_who2 を実行すると、SQL コマンドの 1 つがブロックされているように見えますが、「スリープ中」および「コマンド待ち」のプロセスを待機しています。これは意味がありません。

代替テキスト

これを引き起こしている可能性のあるアイデアはありますか?以前テーブルに大量の行を挿入したトランザクション内で DELETE が実行されていることはわかっていますが、それが問題になる可能性はありますか?

0 投票する
2 に答える
355 参照

sql-server - WPFデータグリッドにsp_who2の出力を表示する

SQLServerコマンド「sp_who2active」の出力をWPFデータグリッドに表示したいと思います。私は次のコードを思いついた-

正常に実行されますが、実際にはsp_who2の出力ではなく、「RowError」、「RowState」などの列が表示されます。

誰かが私が達成したいことをする方法を知っていますか?

0 投票する
1 に答える
7006 参照

sql-server - VB.NetSQLClient接続とSQLServer-アクティブな接続はすべて閉じていても反映されます

VB.NetおよびSQLServer2008 R2の使用:

最近、sp_who2を使用して接続を反映するデータベースがあります。.Netアプリケーションが閉じてすべての接続が破棄されても、「。NetSqlClientデータプロバイダー」は引き続きアクティブです。

コードは次のようになります。

System.Data.SqlClientをインポートします

そして、アプリケーションの実行後にsp_who2を使用してSQL Serverを見ると(太字の.NetSQLClientDataProviderを見てください)

SPIDステータスログインHostNameBlkByDBNameコマンドCPUTimeDiskIOLastBatch ProgramName SPID REQUESTID

57あなたのPCで寝ています。master AWAITING COMMAND 0 0 07/19 12:38:48 * .NetSqlClientデータプロバイダー* 570

実際にアプリケーションを閉じた場合にのみ、.NetSQLClientデータ接続がビューから削除されます。私が懸念しているのは次のとおりです。1。リソースの観点から、これらのプロセスがデータベースに与える影響と、接続が反映されてスリープしている理由。2.データベースをデタッチしようとすると、1つの接続がアクティブになっていますが、コードが閉じられて破棄されています。

0 投票する
2 に答える
8835 参照

sql - SP_WHO2条件付き?

長時間実行されている挿入があり、定期的にSP_WHO2を実行すると、コマンドとして「CONDITIONAL」と表示されます。それは何を示しているのでしょうか?これを検索したところ、「うん、クエリが長時間実行されているとわかります...」のようなものがほとんどでした。データベースで何が起こっているのでしょうか。

0 投票する
1 に答える
2578 参照

sql-server - 「SELECT 1 from」が DELETE を実行している別のプロセスで LCK_M_IX を引き起こすのはなぜですか?

私は患者_クリニック_訪問をリストするテーブルを持っています。SQLSERVER 2005 バックエンドがあります。Access2010 フロントエンド。

このテーブルは毎朝、病院のメインフレームからのデータ ダンプから更新する必要がありました。

このデータ ダンプには、前日の情報 (誰が出席したか、欠席したか、キャンセルしたか) と次の 6 週間の予定が含まれています。

したがって、"DELETE * from Patient_clinic_visits where Visit_Date > (日) and < (日 + 1) を実行して、処理後に新しいデータをアップロードする前に、毎日テーブルを順番に消去します。

ほとんどの日には、1 日あたり約 100 ~ 150 のレコードしかありません。それらは、NO_ACTION チェーンを持つ Master_Patient_Table の Pat_ID への 1 つの外部キーです。

現時点では、この削除クエリは、数日間のデータを処理した後、Access フロントエンドでタイムアウトになっています (つまり、月曜日、火曜日、水曜日に問題なく動作します...)

sp_whoisactive を実行すると、次のようになります。

00 01:53:01.926 52 [[query SELECT 1 FROM "dbo"."Patient_Clinic_Visits" ]] RAHCC_User (265ms)ASYNC_NETWORK_IO 0 0 0 NULL 51 0 0 2 中断 0 NULL SAH0020663 RAHCC_DB Microsoft MDB RAHCC 2013-04-02 09: 08:33.027 0 2013-04-02 11:01:35.033

00 00:00:27.610 53 [[クエリ -- 診療所の日付 >= '2013 年 3 月 26 日' AND 診療所の日付 < '2013 年 3 月 27 日' AND 診療所の場所 = 'MONC' ]] HAD\jhogan05 (27596ms) LCK_M_IX 16 0 0 52 1,074 0 0 130 中断 2 NULL SAH0048645 RAHCC_DB Microsoft SQL Server Management Studio Express - クエリ 2013-04-02 11:01:07.343 0 2013-04-02 11:01:35.033

これは、クライアントのフロント エンドが「Patient_Clinic_Vists からの SELECT 1」を待機しており、これが手順をブロックしていることを示しています。どうやらこれはクライアントの ASYNC_NETWORK_IO によるものです (これは、Access フロント エンドがテーブル リクエストを実行してからデータを処理しない場合に発生する可能性があります)。

a) しかし、「Patient_Clinic_Visits からの SELECT 1」は、実際には TRUE または FALSE のみを返す必要がありますか?? これは何かを埋める可能性が低く、ブロック状況を引き起こす理由が不明です??

b) Access フロントエンドのどこにも「SELECT 1...」が見つかりません。これは、より複雑な選択に応じて SQLSERVER によって行われた一連のサブ選択の一部ですか? もしそうなら、そのプロセス履歴でこの状況を引き起こしている真の選択をどのように見つけますか?

乾杯、

ジョンHD


私はおそらくあなたがしたいと思いますdata[0].idか?

0 投票する
1 に答える
720 参照

sql - SQL Server の CPU 使用率

SQL Server で SQL クエリを使用して、 CPU使用率のアイドル状態、ユーザー、システム、分析の IOを見つける方法