मेरे पास SQL Sever 2012 उदाहरण पर एक डेटाबेस है जिसे मैं 2008 सर्वर पर कॉपी करना चाहूंगा। 2008 सर्वर 2012 सर्वर (मैंने कोशिश की है) द्वारा बनाए गए बैकअप को पुनर्स्थापित नहीं कर सकता।
2008 के संगत बैकअप बनाने के लिए मुझे 2012 में कोई विकल्प नहीं मिला। क्या मैं कुछ भूल रहा हूँ?
क्या स्कीमा और डेटा को संस्करण-अज्ञेय प्रारूप में निर्यात करने का एक आसान तरीका है जिसे मैं 2008 में आयात कर सकता हूं?
डेटाबेस किसी भी 2012 विशिष्ट सुविधाओं का उपयोग नहीं करता है। इसमें टेबल, डेटा और संग्रहीत कार्यविधियाँ शामिल हैं।
यहाँ मैंने अभी तक कोशिश की है
मैंने कार्य करने की कोशिश की → 2012 सर्वर पर लिपियों को उत्पन्न करें, और मैं एसक्यूएल स्क्रिप्ट के रूप में स्कीमा (संग्रहीत प्रक्रियाओं सहित) उत्पन्न करने में सक्षम था। हालांकि इसमें कोई भी डेटा शामिल नहीं था।
अपनी 2008 की मशीन पर उस स्कीमा को बनाने के बाद, मैं 2012 मशीन पर "निर्यात डेटा" विज़ार्ड खोलने में सक्षम था, और 2012 को स्रोत मशीन और 2008 को लक्ष्य मशीन के रूप में कॉन्फ़िगर करने के बाद, मुझे तालिकाओं की एक सूची के साथ प्रस्तुत किया गया था, जिसे मैं कॉपी कर सकता था। मैंने अपनी सभी तालिकाओं (300+) का चयन किया, और विज़ार्ड के माध्यम से क्लिक किया। दुर्भाग्य से यह अपनी स्क्रिप्ट बनाने में उम्र बिताता है, फिर "केवल पढ़ने के लिए कॉलम 'FOO_ID" में विफलता डालने जैसी त्रुटियों के साथ विफल रहता है।
मैंने "कॉपी डेटाबेस विजार्ड" की भी कोशिश की, जिसने दावा किया कि वह 2000 से "बाद में 2005 या बाद में" कॉपी करने में सक्षम है। इसके दो तरीके हैं:
"डिटैच एंड अटैच", जो त्रुटि के साथ विफल हो गया:
Message: Index was outside the bounds of the array. StackTrace: at Microsoft.SqlServer.Management.Smo.PropertyBag.SetValue(Int32 index, Object value) ... at Microsoft.SqlServer.Management.Smo.DataFile.get_FileName()
SQL प्रबंधन ऑब्जेक्ट विधि जो त्रुटि के साथ विफल रही
संपत्ति को पढ़ नहीं सकते IsFileStream। यह गुण SQL Server 7.0 पर उपलब्ध नहीं है। "