2011-11-03 14 views
7

को पूरा करने के लिए हमेशा के लिए लेता है मेरे पास एक SQL Server 2008 R2 एंटरप्राइज़ डेटाबेस है जिसे vw_Users कहा जाता है।एसक्यूएल ड्रॉप व्यू स्टेटमेंट

-Running (vw_users से * चुनें) को पूरा करने के लिए एक सेकंड से भी कम समय लगता है।

- दृश्य के अंदर एसक्यूएल को चलाने के लिए एक सेकंड से भी कम समय लगता है।

-रचना (ड्रॉप व्यू vw_Users) बस लटकता है और वास्तव में कभी पूरा नहीं होता है। मैंने इसे रद्द करने से पहले लगभग 10 मिनट तक इसे चलाने दिया।

मैंने SQL सर्वर एजेंट को पुनरारंभ किया, फिर पुन: प्रयास किया, लेकिन यह अभी भी हो रहा है।

यह एक नया मुद्दा है, यह सर्वर और यह डेटाबेस एक वर्ष से अधिक के लिए ठीक चल रहा है।

दृश्य पर कोई सूचकांक नहीं है। मुझे यकीन नहीं है कि समस्या क्या है, लेकिन किसी भी मदद की सराहना की जाएगी।

धन्यवाद

उत्तर

14

किसी ने या कुछ और उस दृश्य तक पहुँचने एक खुला संबंध नहीं है और आप अवरुद्ध किया जा रहा है।

आप इस अपने DROP शुरू करने से एक अन्य विंडो में SSMS में जाँच कर सकते हैं, तो चल रहा है:

sp_who2 active

आप अपने spid वाली एक पंक्ति दिखाई चाहिए, और blocked_by क्षेत्र में एक और spid नंबर होगा यह। आपको अवरुद्ध करने के लिए उस स्पिड को ढूंढें।

अगर यह सुरक्षित रूप से समाप्त किया जा सकता, या तो स्वयं या से प्रक्रिया को बंद SSMS भीतर चलाएँ:

kill x

... जहां x अवरुद्ध प्रक्रिया का spid है।

+0

किसी और के लिए यह करना; मैंने इसका अनुसरण किया और मुझे एसपीआईडी ​​नंबर मिला जो मुझे अवरुद्ध कर रहा था लेकिन उसे टेबल में नहीं मिला। बस 'sp_who2' दर्ज करने से एक लंबी सूची प्रदान होती है जिसमें मेरे लिए अवरुद्ध SPID था –

+0

उत्कृष्ट। मैं एक संबंधित सी # ऐप में ब्रेकपॉइंट का एहसास करने के लिए उपेक्षा को देखने का प्रयास कर रहा था, वह अपराधी था जो अल्टर व्यू ऑपरेशन को अवरुद्ध करता था। _ProgramName_ कॉलम ने सुराग दिया है _ _et SqlClient डेटा Provider._ – bvj

संबंधित मुद्दे