2013-07-05 6 views
17

मेरी तालिका में मैं ऑटो वेतन वृद्धि आईडी जो 1 66,440 करने के लिए और अगले संख्या की तरह इसकी संख्या होने है यहां से जब तक 88846900.AutoIndex बदलें संख्या Mysql

88846790 + वेतन वृद्धि है वहाँ में कोई रिकॉर्ड है 66440 के बीच 88,846,790

मैं अपने अगले ऑटो वेतन वृद्धि संख्या 66441 है, लेकिन इसके लेने 88,846,791 होना चाहते हैं, तो आप 66441 के बगल में ऑटो वेतन वृद्धि की स्थापना में मेरी मदद कर सकते,

+2

इस प्रश्न के सभी भविष्य के आगंतुकों के लिए: तालिका में सबसे बड़ी आईडी से कम ऑटो वृद्धि मूल्य निर्धारित करने का प्रयास न करें। आप अपनी पंक्तियों को मौजूदा पंक्तियों के साथ गिनने और संघर्ष के रूप में परेशानी में भाग लेंगे। आपकी तालिका ऑटो वृद्धि अनुक्रम में अंतराल विकसित करेगी - यह अपेक्षित और ठीक है, ऑटो वृद्धि का बिंदु यह है कि इस क्षेत्र में कोई अर्थपूर्ण अर्थ नहीं होगा, इसलिए अंतराल में कोई समस्या नहीं होती है। यदि आप '2,147,483,647' उपयोग करने योग्य पूर्णांक स्थान से बाहर होने का खतरा हैं, तो फ़ील्ड को हस्ताक्षरित या 'बिगिनट' बनाने पर विचार करें, या अपने डेटा का पुनर्निर्माण करें (और अपने संदर्भ प्रबंधित करें)। – Jason

उत्तर

19
alter table tablename AUTO_INCREMENT=664441 

का उपयोग कर

+0

चला कोई अपने अपने लेने 88,846,791 संख्या केवल –

+0

@Tim दिन्ह एक वैध बिंदु है काम नहीं कर रहा, सभी पंक्तियों auto_incr मूल्य> 664,440 – Satya

+0

होने को दूर @ सत्य मैं उन नंबरों को नहीं हटा सकता, मुझे उन नंबरों की भी आवश्यकता है –

6

आप ALTER TABLE उपयोग कर सकते हैं auto_increment मान बदलने के लिए:

ALTER TABLE my_table AUTO_INCREMENT = 66441; 

अधिक जानकारी के लिए MySQL reference देखें।

से 88846790

एक आईडी उच्च वाली सभी पंक्तियों डालें करने के लिए आप, 66441 की तुलना में अधिक आईडी की पंक्तियां नहीं निकालते हैं

परिवर्तन autoincrement में कुछ नहीं करता है याद रखें।

उदाहरण:

ID Value 
---- -------- 
    1  C 
    2  A 
    4  D 
50  A 
51  C 

मैं 5 मैं हटाने या करने की जरूरत करने के लिए ऑटो वेतन वृद्धि बदलना चाहते हैं फिर से डालने 50 और 51 पहले। क्योंकि अन्यथा अगली ऑटो वृद्धि 52 होने वाली है।

पर कितना और कैसे महत्वपूर्ण डेटा है निर्भर करता है, ऐसा करने के लिए अक्सर सबसे अच्छी बात यह है: कुछ भी नहीं

क्योंकि उन प्राथमिक आईडी के उन आईडी OPN आधारित अन्य पंक्तियों के संबंधों, और शायद वेब यूआरएल है । यह सब विफल हो जाएगा, जब तक कि आप किसी प्रकार की स्क्रिप्ट नहीं बनाते।

+0

नहीं, यह 88846791 नंबर लेने पर काम नहीं कर रहा है केवल –

+0

888467 9 0 से अधिक आईडी के साथ सभी पंक्तियों को फिर से डालने या निकालने के लिए याद रखें। कृपया उत्तर पढ़ें, और कोशिश करें ... – Timmetje

+0

हाँ उर दाएं, तो क्या यह हासिल करने का कोई और तरीका है ..! –

1

आप ALTER TABLE

ALTER TABLE tablename AUTO_INCREMENT = 66441 
+0

कोई अपने काम नहीं कर रहा है अपने लेने 88,846,791 संख्या केवल –

+0

यू इस क्वेरी – PSR

+0

हाँ मैं चलाने इस क्वेरी –

1
ALTER TABLE tbl AUTO_INCREMENT = 66441; 

करना चाहिए आप रिकॉर्ड नहीं है, तो ऑटो वेतन वृद्धि क्षेत्र अद्यतन कर सकते हैं आईडीएस से अधिक 66441 तो यह काम करना चाहिए।

+1

हां मैंने उल्लेख किया है मेरा प्रश्न 66440 से 88846790 –

+0

@ सिद्धाश भाल्के के बीच कोई रिकॉर्ड नहीं है: फिर इसे काम करना चाहिए और इसे काम करना चाहिए, क्या आप अपने क्षेत्र डेटाटाइप को लंबाई के साथ पोस्ट कर सकते हैं। –

+0

@ महेश.डी: ज़रूर –

3

आप नीचे दिए गए जैसे ALTER टेबल आदेश का उपयोग कर सकते हैं,

ALTER TABLE tablename AUTO_INCREMENT = 66441 
1

मैं मुसीबत phpMyAdmin में काम करने के लिए इस रही, यहां तक ​​कि क्वेरी सीधे inputting था। यदि आप उस तालिका को ब्राउज़ करते हैं जिसे आप इंडेक्स को रीसेट करना चाहते हैं, तो Operations पर क्लिक करें, तो आप AUTO_INCREMENT सीधे Table options के तहत सेट करने में सक्षम होना चाहिए। फिर बस जाओ पर क्लिक करें और आप सब तैयार हैं!

ALTER TABLE tablename AUTO_INCREMENT=1 

तब से इंजन यह सबसे कम उपलब्ध मूल्य वैसे भी कर देगा:

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