2009-11-10 13 views
17

मेरा डाटाबेस नाम SPM है और मैं इसे spm (छोटे अक्षरों) में बदलना चाहता हूं।मैं MySQL में डेटाबेस नाम का केस कैसे बदल सकता हूं?

मैं

RENAME DATABASE SPM TO spm; 

उपयोग करने की कोशिश, लेकिन मैं निम्न त्रुटि संदेश मिल रहा है:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DATABASE SPM to spm' at line 1 

मेरे सर्वर संस्करण: 5.0.45

+0

त्रुटि 1064 (42000): आपको एक त्रुटि मेरे पास है एन आपका एसक्यूएल वाक्यविन्यास; लाइन 1 – Rachel

+0

mysql पर नाम 'एसपीएम एसपीएम टू स्पैम' के लिए उपयोग करने के लिए सही वाक्यविन्यास के लिए आपके MySQL सर्वर संस्करण से मेल खाने वाले मैन्युअल की जांच करें> आरएमएन डाटाबेस एसपीएम स्पैम; ERROR 1064 (42000): आपको अपने SQL वाक्यविन्यास में कोई त्रुटि है; लाइन 1 – Rachel

+0

पर संभावित डेटामैक्स के लिए अपने MySQL सर्वर संस्करण से मेल खाने वाले मैनुअल की जांच करें, जो संभावित रूप से एक MySQL डेटाबेस (स्कीमा नाम बदलें) का नाम बदल सकता है?] (http://stackoverflow.com/questions/67093/how-do-i-quickly-rename-a-mysql-database-change-schema-name) –

उत्तर

29

ऐसा करने के लिए कोई डेटाबेस कमांड नहीं है। आपको मूल रूप से डेटाबेस के बाहर करना है। संभावित समाधानों को रेखांकित करने वाले कुछ संदर्भ नीचे दिए गए हैं। यह इस question

में काफ़ी अच्छा जवाब दिया गया है यह शायद क्या यह अपने मामले

mysqladmin create spm 
mysqldump SPM | mysql spm 

में की तरह दिखना चाहिए के बाद आप सत्यापित किया है कि सब कुछ आपको मूल डेटाबेस ड्रॉप कर सकते हैं में है।

drop database SPM 

संदर्भ Rename database 1/Rename database 2

[पर "RENAME DATABASE" कमांड नोट:। यह बयान MySQL 5.1.7 में जोड़ा गया लेकिन खतरनाक हो पाया था और MySQL 5.1.23 में हटा दिया गया था]

वर्ष स्कीमा के डेटाबेस सामग्री बाहर फेंक
+0

बस जोड़ना चाहता था, phpMyAdmin की एक नाम बदलें। बस डेटाबेस का चयन करें और फिर "ऑपरेशंस" पर क्लिक करें और फिर नाम बदलें। यह नए नाम के साथ एक डेटाबेस बनाता है, पुराने को कॉपी करता है और फिर इसे हटा देता है। –

-1

यह एक RENAME DATABASE साथ किया जाता है कथन:

RENAME DATABASE old_db_name TO new_db_name; 

यह कथन MySQL 5.1.7 में जोड़ा गया था लेकिन यह खतरनाक पाया गया था और MySQL 5.1.23 में हटा दिया गया था।

+0

मुझे आशा है कि आपको बुरा लगेगा कि मैंने आपका जवाब बदल दिया है। अगर आपको लगता है कि यह अनुचित था तो वापस लौटने के लिए स्वतंत्र महसूस करें। – soulmerge

+0

मुझे कोई फर्क नहीं पड़ता :) मैंने हालांकि थोड़ा सा नोट जोड़ा था। – dstibbe

+3

यह लागू नहीं होता है। और इसका इस्तेमाल नहीं किया जाना चाहिए। –

-1

rename database कमांड का उपयोग करें।

आप अपने mysql सर्वर को रोकने का प्रयास कर सकते हैं और उस फ़ोल्डर का नाम बदल सकते हैं जिसमें आपके पसंदीदा नाम पर आपका डीबी डेटा शामिल है। फिर अपने सर्वर को शुरू करें और अनुदान की जांच करें - उनमें अभी भी आपके पुराने डेटाबेस नाम के संदर्भ शामिल हो सकते हैं।

+0

ERROR 1064 (42000): आपको अपने SQL वाक्यविन्यास में कोई त्रुटि है; लाइन 1 – Rachel

+0

पर 'एसपीएम एसपीएम टू स्पैम' के पास उपयोग करने के लिए सही वाक्यविन्यास के लिए आपके MySQL सर्वर संस्करण से मेल खाने वाले मैन्युअल की जांच करें कृपया मुझे एक आदेश दें जिसे आप निष्पादित करने का प्रयास करते हैं। – silent

+0

mysql> नाम डेटा एसपीएम स्पम करने के लिए; ERROR 1064 (42000): आपको अपने SQL वाक्यविन्यास में कोई त्रुटि है; लाइन 1 – Rachel

1

उपयोग mysql_dump (यह एसक्यूएल उत्पादन पैदा करता है, और शामिल कर सकते हैं सब वस्तु बनाने के बयान), नई स्कीमा के लिए स्विच, और निष्पादित कि स्क्रिप्ट mysql> . dump.sql

यदि यह एक बड़ा डेटाबेस है, तो इसमें कुछ समय लग सकता है, लेकिन यह करने का सबसे सुरक्षित तरीका है (सुनिश्चित करें कि रूपांतरण प्रक्रिया चल रही है, तो आप डेटाबेस का उपयोग करके किसी भी एप्लिकेशन को निलंबित कर दें)।

पुरानी स्कीमा हटाएं जब आप संतुष्ट हों कि सबकुछ काम करता है।

+0

क्या आप इस बारे में और अधिक समझा सकते हैं कि यह कैसे पूरा किया जा सकता है क्योंकि मैंने कभी भी mysql डंप का उपयोग नहीं किया है और इसलिए यह सुनिश्चित नहीं है कि यह कैसे काम करेगा – Rachel

+0

क्या आपको इसे वास्तव में फ़ाइल में रखना होगा? क्या यह खिड़कियां विशिष्ट हैं? –

3
RENAME {DATABASE | SCHEMA} db_name TO new_db_name; 

यह कथन MySQL 5.1.7 में जोड़ा गया था लेकिन यह खतरनाक पाया गया था और MySQL 5.1.23 में हटा दिया गया था। इसका उद्देश्य डेटाबेस निर्देशिका नामों में डेटाबेस नाम मैप करने के लिए 5.1 में लागू एन्कोडिंग का उपयोग करने के लिए पूर्व-5.1 डेटाबेस को अपग्रेड करना सक्षम था। हालांकि, इस कथन के उपयोग से डेटाबेस सामग्री का नुकसान हो सकता है, यही कारण है कि इसे हटा दिया गया था। पिछले संस्करणों में RENAME DATABASE का उपयोग न करें जिसमें यह मौजूद है।

नए एन्कोडिंग के साथ डेटाबेस नामों को अपग्रेड करने का कार्य करने के लिए, ALTER DATABASE db_name UPGRADE DATA DIRECTORY NAME का उपयोग करें।

0

आप उपयोग करते हुए यूजर इंटरफेस

चरण 1 अपने डेटाबेस नाम बदल सकते हैं: के सभी जाओ सबसे पहले स्थानीय होस्ट करने के लिए/phpmyadmin/और अपने डेटाबेस पर क्लिक करें

चरण 2: Opertaion टैब

चरण 3 पर क्लिक करें: (नाम बदलें डेटाबेस के लिए) पाठ फ़ील्ड में नए डेटाबेस नाम दर्ज

चरण 4: जाओ buttton पर क्लिक करें

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