Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

IsolationLevel.ReadUncommitted (असंबंधित?) लेनदेन का उपयोग करते समय SqlD निर्भरता सदस्यता काम नहीं कर रही है

SqlDependency प्राप्त करने के लिए बधाई काम कर रहा हूँ (मैं बिल्कुल भी व्यंग्य नहीं कर रहा हूँ, कई लोग इसमें असफल हो गए थे)।

अब पढ़ने का समय है अधिसूचना के लिए क्वेरी बनाना एमएसडीएन पर विषय। आपको वे शर्तें दिखाई देंगी जिनके तहत क्वेरीज़ इस आवश्यकता सहित सूचनाओं के लिए मान्य हैं:

मैंने कैसे SqlDependency की बुनियादी बातों के बारे में लिखा काम करता है , शायद कुछ गलतफहमियों को दूर करेंगे। और, एक साइड नोड के रूप में, चूंकि आप लिंक का उपयोग कर रहे हैं, इसलिए आपको LinqToCache , जो Linq . के बीच एक सेतु प्रदान करता है प्रश्न और SqlDependency

एक अन्य टिप्पणी:Start() न करें और Stop() आपका SqlDependency निली-विली। आपको जल्द ही इसका पछतावा होगा। Start() ऐप स्टार्टअप के दौरान ठीक एक बार कॉल किया जाना चाहिए, और Stop() ऐप शटडाउन के दौरान ठीक एक बार (सख्ती से बोलना, एपडोमेन लोडिंग और अनलोडिंग के दौरान है)।

अब, आपकी समस्या के बारे में:आइसोलेशन स्तर जो मायने रखता है वह अधिसूचित क्वेरी . में से एक है . इसका अर्थ है, जिस क्वेरी पर आप सदस्यता संलग्न करते हैं, नहीं जिस क्वेरी पर आप UPDATE करते हैं (मैं गंदे पढ़ने के तहत अद्यतन करने के ज्ञान पर टिप्पणी नहीं करूंगा... या गंदे पढ़ने का ज्ञान किसी भी चीज के लिए पढ़ता है ) जहां तक ​​​​मैं कह सकता हूं, आपके द्वारा दिखाया गया कोड क्वेरी को read_uncommitted के अंतर्गत पोस्ट नहीं करना चाहिए। आपके द्वारा SET TRANSACTION ISOLATION ... . जारी करने के बाद उस सत्र में बाद के सभी लेन-देन (सभी बयानों को हटा दें) उस अलगाव स्तर के तहत होंगे। आप कनेक्शन बंद करते हैं (डेटाकॉन्टेक्स्ट के निपटान के माध्यम से) और फिर एक अलग कनेक्शन का उपयोग करें। जब तक ... आप कनेक्शन पूल का उपयोग नहीं करते। निर्दोष पीड़ितों के क्लब में आपका स्वागत है :)। कनेक्शन पूलिंग से Close() में आइसोलेशन लेवल में बदलाव होता है। /Open() सीमाएं . और यही आपकी समस्या है। कुछ आसान उपाय हैं:

और जब हम बात कर रहे हों, तो आपको इसे भी पढ़ना होगा: टेबल्स को क्यू के रूप में उपयोग करना .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. nvarchar(MAX) में अधिकतम कितने वर्ण होंगे?

  2. SQL सर्वर कर्सर के लिए चरणों को परिभाषित करें - SQL सर्वर / TSQL ट्यूटोरियल

  3. मैं SQL सर्वर तालिका में "अंतिम संशोधित" और निर्मित कॉलम कैसे जोड़ूं?

  4. तर्क डेटा प्रकार संख्यात्मक सबस्ट्रिंग फ़ंक्शन के तर्क 1 के लिए अमान्य है

  5. सर्वर से परिणाम प्राप्त करते समय एक परिवहन-स्तर त्रुटि उत्पन्न हुई