問題タブ [sqldependency]

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 投票する
1 に答える
77 参照

asp.net - dbのクエリに使用したものと同じクエリをSqlCacheDependencyに指定する必要がありますか?

以下のようなクエリを使用して、大きな結果セットを取得するとします。

ここで、クエリによって返された各オブジェクトをキャッシュし、オブジェクトが変更されたときにそのオブジェクトを無効にします。したがって、上記の結果セットの各結果をユーザーオブジェクト(DTO)にキャストし、それらをキャッシュに追加するときに、次のように依存関係を追加します。

しかし、これはうまくいかないようです。sys.dm_qn_subscriptionsにレコードはありません。イベントログにエラーはもうありません(昨日取得し、それらを解決するために適切な手順を実行しました)Sql Profilerを見ると、SqlQueryNotificationストアドプロシージャが約2分ごとに実行されていることがわかります。

では、なぜ依存関係が作成されなかったのでしょうか。別のクエリを使用して依存関係を作成しているためですか?

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

sql-server-2005 - Sql Server が SqlCacheDependency を使用して単純な選択クエリのサブスクリプションを作成しない

asp.net アプリケーションでオブジェクトをキャッシュするために、単純な SQLCacheDependency を実装しようとしていました。

かなり長い間頭を壊した後、行き止まりにぶつかったようで、外の景色が助けになると思いました.

ただし、このアイテムは追加されるとすぐにキャッシュから削除されます。他の考えられる原因の修正に多くの時間を費やした後(データベースのANSI NULLS ONなどの設定)、壁にぶつかりました。SQL Server プロファイラーから、サブスクリプションが次のテキスト データで起動されていることがわかります

type = subscribe および info = invalid であることがわかります。これは私を驚かせるものです。http://www.simple-talk.com/sql/t-sql-programming/using-and-monitoring-sql-2005-query-notification/およびhttp://msdn.microsoft.com/en-usによると/library/ms189308.aspx「送信されたコマンドに、通知をサポートしないステートメント (INSERT や UPDATE など) が含まれていた」場合に発生します。これは、明らかに、SqlDependency の作成に指定された条件に準拠する単純な選択ステートメントです。

それで、私はここで何が欠けていますか?これは最も単純なシナリオですが、うまくいきません!

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

c# - クエリを実行せずにSqlDependency

SqlDependencyクエリを実行せずにSQLServerのC#でを実行することは可能ですか?

かなり大きくなる可能性のあるテーブルがいくつかあります。テーブル全体でクエリを実行して行が変更されたかどうかを確認するには、長い時間がかかる場合があります。

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

sql-server-ce - Compact Edition の SqlDependency (変更通知)?

答えはノーだと思いますが、とにかく尋ねたいのです。SQL Server 2005 以降では、サービス ブローカ メカニズムを介したクエリでのライブ ビューの実装がサポートされています。.NET クラス SqlDependency は、この機能を使用します。SQL Server CE はサポートしていません。

私が疑問に思っているのは、クエリのライブビューを表示したい SQL Server のエディションがあるとすれば、それは CE になるということですね。結局のところ、応答性の高いインタラクティブな GUI を実行したいと思う可能性が最も高いのは、これです。CE を使用してクエリにライブ ビューを実装するための代替メカニズムはありますか、またはポーリングを使用する必要がありますか?

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

c# - C# での SQL 依存関係

SQL Dependency (C# 4.0) を使用してデータベースへの変更を「リッスン」する方法を理解しようとしています。私はウェブ上でかなりの数を見てきましたが、依存関係を使用して SQL 依存関係が依存しているのと同じデータをプルするように (自然に) 調整されているようです。たとえば、この記事.

私がやろうとしているのは、トリガーされると、さまざまな SQL 'Select' クエリが生成される依存関係を作成することです (他のメソッドなどに保存できます)。例: テーブル内の行数を監視する依存関係を設定しようとしています。行数が増えたら、x、y、z を実行します (つまり、私のプログラムは、行数が何なのかは気にせず、単に増加しただけで、多くのことを行う場合)。

これを行う最善の方法について何か考えはありますか?

編集:現在持っているコードを添付しました。GetData() プロセスから SqlDependency の設定を分離する方法を見つけようとしています。ただし、現在、イベントハンドラーを削除して「SetupSqlDependency()」を再実行した後、イベントハンドラーにすぐに戻るため、少し無限ループに入ると思います

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

c# - SQLの依存関係が起動しない

「CountRows」クエリ(C#、SQL Server 2008 Expressで記述)で起動するようにSQL依存関係を設定しようとしましたが、元のサブスクリプションSQLNotificationTypeが実行された後、イベントハンドラーは(行にもかかわらず)再度起動したくないようです。追加されており、SQLを確認したところ、期待値が返されています...)。

私のコードは以下の通りです。どんな考えでも大歓迎です!

編集:このコードが含まれているプロジェクトはWPFプログラムです。この特定のコードを別のクラスに格納し、WPFプログラムが「初期化」イベントハンドラーでインスタンスを作成します。次に、このクラスに、基本的に最初にConnectToDatabase()を呼び出し、次にSetupSQLDependency()を呼び出すメソッドがあります。

編集2:補足として、このプログラムは、私が数人のユーザーに配布したいと思っていたWPFです。目標は、データベースに新しい行が追加されるたびに、特定の情報でWPFを更新することでした。常にデータベースにクエリを実行するのではなく、これが最善の方法だと思いました。

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

sql - vb.netで複数のsqldependancyが可能ですか?

基本的に私のコードはここに基づいています http://www.dreamincode.net/forums/topic/185244-using-sqldependency-to-monitor-sql-database-changes/

現在の状況では、2 つのテーブルを監視したいので、最初の sqldependancy で別の同様のコードを単純に複製しますが、失敗し、最新の sqldependancy が以前の sqldependancy 関数を置き換えるようです。

ここに私のコードがあります

最後に、ロード フォームで GetNames,GetMedID を呼び出しましたが、正常に機能しました。GetMedID が機能しているだけで、変更時に GetNames がイベントを発生させません。

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

c++ - SqlDependencyの問題、Visual C ++ .Net 3.5、SQL Server 2008

SqlDependencyサービスをWindowsフォームアプリと統合する際に問題が発生しました。誰かが新人を助けてくれることを期待していました。これを前置きしたいのですが、データベース接続文字列とクエリステートメントが正しいことを知っています。さらに、データベースでサービスブローカーが有効になっていることを知っています。発行:

クエリから1を返します。

次のように、メインフォームの読み込みイベントで依存関係を開始します。

次に、次のようにデータベースからプルします。

GetDataは次のように定義されます。

そして、私の変更ハンドラーは次のように定義されています。

データベース内の何かをローカルクライアントから変更すると、変更イベントが発生し、すべてが正常に表示されます。ただし、別のマシンのクライアントから変更を開始すると、OnChangeイベントが発生することはありません。私は何か風変わりなことをしていると思いますが、それを理解するための洞察がありません。ありがとう。

0 投票する
6 に答える
9335 参照

c# - SQLDependency_OnChange-イベントは1回だけ発生します

SQLDependencyを使用して、データベースに変更があった場合に通知します。プログラムの起動後は問題なく動作します。最初の変更を行うと、イベントが発生します。うわー...それは素晴らしい。しかし、2回目の変更を行っても、イベントは再度発生しません。私は思うすべてのウェブを検索しましたが、この問題については何も見つかりませんでした。OnChange-Eventがループで発生する問題のみが見つかりました。誰か助けてもらえますか?

ここに小さなコードピースがあります:

私のOnChange-Eventは次のようになります。

問題はどこだ?

0 投票する
0 に答える
945 参照

c# - EntityFramework NavigationProperties で SQLDependency を使用する方法

キャッシングの目的で SQLDependency を使用し、その上に EntityFramwework を使用しています。ナビゲーション プロパティを持つエンティティはほとんどありません。以下のように Eager Loading を使用してアクセスしようとしていたもの

entity.Include("NavigationProperty");

そして、デフォルトで IsLazyLoading = false を設定しました。

内部的に、ADO.net は、Linq クエリを含めるための Left Outer Join SQL クエリを作成します。

MSDN によると、「外部結合」は QueryNotification ではサポートされていません。以下はリンクです

http://msdn.microsoft.com/en-us/library/aewzkxxh(v=vs.90).aspx

では、 SQLDependency を使用しているときに NavigationProperties をロードするにはどうすればよいですか?

どんな種類の助けも大歓迎です。前もって感謝します。