मेरे पास एक वीबी 6/एक्सेस एप्लिकेशन है जो कभी-कभी गलत ऑटोनंबर फील्ड बीज के साथ समस्या का सामना करता है।ऑटोऑम्बर बीज रीसेट करें
आइए कहें कि एक ऑटोमंबर फ़ील्ड आईडी (जो प्राथमिक कुंजी भी है) के साथ एक टेबल MYTABLE है। आइए इस समय कहें कि आईडी का अधिकतम मूल्य 1000 है। जब एप्लिकेशन एक नया रिकॉर्ड डालता है (आईडी मान स्पष्ट रूप से प्रदान नहीं किया जाता है), किसी कारण से यह निर्णय लेता है कि अगला ऑटोनंबर फ़ील्ड मान 950 है (और 1001 नहीं होना चाहिए क्योंकि यह होना चाहिए) - इसलिए एक प्राथमिक कुंजी उल्लंघन त्रुटि होती है।
मुझे एक KB आलेख मिला जो मेरे लक्षणों का वर्णन करता है: http://support.microsoft.com/kb/884185।
ALTER TABLE MYTABLE ALTER COLUMN ID COUNTER(1001,1)
जब मैं यह करने के लिए प्रयास करते हैं, यह "अवैध क्षेत्र डेटा प्रकार"
अगर मैं Access में डेटाबेस खोल सकते हैं और कर समस्या तय हो जाता है के साथ विफल: संक्षेप में, वे एक क्वेरी चलाने के लिए सुझाव देते हैं कॉम्पैक्ट/मरम्मत, लेकिन मुझे एप्लिकेशन के अंदर ऐसी समस्याओं को ठीक करने में सक्षम होना चाहिए: यह दुनिया भर के कुछ हजारों पीसी पर स्थापित है, और लोगों से एक्सेस के साथ कॉम्पैक्ट/मरम्मत करने के लिए लोगों को एक विकल्प नहीं है।
मैं आवेदन के अंदर कॉम्पैक्ट/मरम्मत करने के लिए डीएओ DBEngine.CompactDatabase
का उपयोग करता हूं, लेकिन यह बीज की समस्या को ठीक नहीं करता है, और कुछ अतिरिक्त चाल की आवश्यकता होती है।
मुझे आशा है कि किसी एक समाधान के लिए एक विचार है, मैं वास्तव में करने के लिए बेताब
धन्यवाद करीब सभी
, आप तालिका बंद कर रहे हैं ** से पहले ** चल 'ALTER तालिका mytable ALTER स्तंभ आईडी काउंटर (1001, 1) '? –
यदि कोड एक्सेस एमडीसी/एसीसीडीबी के अंदर है, तो भाषा वीबीए है, वीबी 6 नहीं। कृपया स्पष्ट करें। – Fionnuala
@ ओटाकू: हाँ, सुनिश्चित करें यह क्वेरी एक्सेस के अंदर निष्पादित होने पर और डीएओ के माध्यम से निष्पादित होने पर विफल हो जाती है। अजीब चीज यह है: यदि एक्सेस में मैं ऑटोनंबर फ़ील्ड को हटा देता हूं, और फिर बिल्कुल वही फ़ील्ड बना देता हूं, तो क्वेरी काम करती है। ऐसा लगता है कि ऑटोनंबर प्रकार के विभिन्न स्वाद हैं, लेकिन मुझे यह अंतर नहीं मिल सकता है कि यह अंतर – Incidently