मेरे पास एक नया विजुअल स्टूडियो 2008 डाटाबेस प्रोजेक्ट (डेटा ड्यूड) है। यह हमारे मौजूदा डेटाबेस पर इंगित करके उत्पन्न किया गया था। मैंने अब कुछ बदलाव किए हैं (नए कॉलम, टेबल, इंडेक्स, आदि) और मैं तैनाती के लिए तैनाती (diff) स्क्रिप्ट उत्पन्न करने की कोशिश कर रहा हूं। तुलना करने और diff स्क्रिप्ट फ़ाइल उत्पन्न करने के लिए मेरे पास स्कीमा तुलना सेटअप है। मुझे लगता है कि मैंने तुलनात्मक सेटिंग्स में से अधिकांश को tweaked किया है और ऑब्जेक्ट मुझे जो चाहिए उसे अनदेखा करता है, हालांकि, शीर्ष पर मुझे कुछ अलग डेटाबेस आदेश मिलते हैं जिन्हें मैं उत्पन्न नहीं करता था। वे इस तरह दिखेगा:स्कीमा के दौरान वैकल्पिक डेटा 2008 डाटाबेस प्रोजेक्ट उत्पन्न करता है
IF EXISTS (SELECT 1
FROM [master].[dbo].[sysdatabases]
WHERE [name] = N'$(DatabaseName)')
BEGIN
ALTER DATABASE [$(DatabaseName)]
SET ANSI_NULLS ON,
ANSI_PADDING ON,
ANSI_WARNINGS ON,
ARITHABORT ON,
CONCAT_NULL_YIELDS_NULL ON,
QUOTED_IDENTIFIER ON,
ANSI_NULL_DEFAULT ON,
CURSOR_DEFAULT LOCAL
WITH ROLLBACK IMMEDIATE;
END
GO
IF EXISTS (SELECT 1
FROM [master].[dbo].[sysdatabases]
WHERE [name] = N'$(DatabaseName)')
BEGIN
ALTER DATABASE [$(DatabaseName)]
SET PAGE_VERIFY NONE
WITH ROLLBACK IMMEDIATE;
END
GO
मैं सेटिंग ट्वीक करने के लिए इतना है कि मैं अपने 15+ सदस्यीय दल को बातचीत करने के लिए है कि वे हर बार वे चाहते हैं differencing फ़ाइल से उन पंक्तियों को हटाने की जरूरत नहीं है पसंद करते हैं अपने पर्यावरण को नवीनतम खींचने और तैनात करने के लिए।
कौन सी सेटिंग्स इसे नियंत्रित कर रही हैं?
बस उत्तर में कुछ और विवरण जोड़ना। जब हमने हमारे मौजूदा डीबी से एसक्यूएल प्रोजेक्ट जेनरेट किया, तो हमने डेटाबेस से SQLSettings जेनरेट करने के विकल्प को याद किया होगा और इसके बजाय, डीबी (डेटा डूड) प्रोजेक्ट के लिए "डिफ़ॉल्ट" सेटिंग्स का उपयोग करना चुना होगा। इसलिए, मेरे वर्तमान डीबी में ये विकल्प सेट नहीं हैं, इसलिए यह उन्हें "फर्क स्क्रिप्ट" पीढ़ी में सेट करना चाहता है क्योंकि उन्हें "डिफ़ॉल्ट" sqlsettings फ़ाइल में निर्दिष्ट किया गया है, लेकिन वास्तव में मेरे डीबी में नहीं। मैं अभी भी उन्हें पीढ़ी से अक्षम करना चाहता हूं, लेकिन यह सुनिश्चित करने के लिए एक सिर है कि आप अपनी डीबी परियोजना को पहली बार साफ करते हैं – Brian