2010-08-31 15 views
6

क्या मुझे यहां कुछ याद आ रही है? ऐसा लगता है कि वीएस -2010 में डेटाबेस प्रोजेक्ट में एक नई तालिका बनाने का एकमात्र विकल्प है:क्या वीएस -2010 डेटाबेस प्रोजेक्ट के लिए कोई टेबल डिज़ाइनर है?

फ़ाइल के रूप में एक टेबल ऑब्जेक्ट बनाएं, फिर अलग-अलग फ़ाइलों के रूप में सभी बाधाएं (डिफ़ॉल्ट) बनाएं, फिर प्रत्येक अनुक्रमणिका को एक अलग फ़ाइल के रूप में बनाएं , और एक अलग फाइल और पर और पर के रूप में प्राथमिक कुंजी ...

या

SSMS में तालिका डिजाइनर का उपयोग करके संपूर्ण तालिका स्कीमा बनाएं और फिर स्कीमा का उपयोग एसक्यूएल का एक अखंड फ़ाइल बनाने के लिए उपकरण की तुलना तालिका के प्रत्येक तत्व के लिए बयान और कोड के प्रत्येक ब्लॉक को वीएस में एक नव निर्मित फ़ाइल में कॉपी करें।

यह प्रश्न 2 साल पहले पूछा गया था और मुझे आशा है कि उत्तर बदल गया है। कृपया मुझे बताएं कि वीएस -2010 में डेटाबेस प्रोजेक्ट के लिए एक छिपी हुई टेबल डिज़ाइनर है जिसे मैंने अभी अनदेखा कर दिया है।

उत्तर

3

मुझे यकीन है कि कोई भी नहीं है!

क्या मैं पूछ सकता हूं कि आपको अपनी नई वस्तुओं के लिए सृजन स्क्रिप्ट फ़ाइलों को बनाने और संशोधित करने के लिए टेबल डिज़ाइनर की आवश्यकता क्यों है? क्या कोई ऐसी चीज है जो आपको यह नहीं देती कि एक डिजाइनर होगा?

+2

@ डेविड, मैं इस मामले में एक डिजाइनर को उसी कारण से पसंद करता हूं क्योंकि मैं नोटपैड में कोडिंग के बजाय अन्य कोडिंग टूल (जैसे वीएस) का उपयोग करता हूं। सुविधा, उत्पादकता और विश्वसनीयता में वृद्धि हुई। उम्मीद है कि आप इस बात से सहमत होंगे कि कुछ कोड इतना "बॉयलर-प्लेट" है कि यह मानव द्वारा की तुलना में एक उपकरण द्वारा त्वरित और अधिक विश्वसनीय रूप से उत्पन्न और बनाए रखा जाता है। जब "अंडर-द-गन", तो मैं अपने समय और विचारों को व्यवसाय तर्क पर विचार-विमर्श करने की बजाय "वैकल्पिक तालिका xxx कंसस्ट्रेंट xxx blah, blah blah" कथन जोड़ता हूं। –

+0

@ डेविड, आपकी प्रोफ़ाइल को देखने के बाद और यह देखते हुए कि आप रेड गेट के लिए काम करते हैं, मैं जोड़ सकता हूं कि अन्य कोडिंग टूल जो मैं इसी कारण से उपयोग करता हूं उनमें शामिल हैं: रेड गेट का एसक्यूएल प्रॉम्प्ट, रिफैक्टर, डेटा जनरल, डॉक्स और पहले, पैकर। आप, बिलकुल भी, एक टेबल डिजाइनर के लिए मेरी इच्छा को समझना चाहिए। –

+1

वीएस -2010 के ऑफलाइन स्क्रिप्ट मॉडल के बारे में पूरा बिंदु यह है कि आपको अपनी ऑब्जेक्ट्स को संशोधित करने के लिए मुश्किल-याद रखने वाले अल्टर स्टेटमेंट बनाने की आवश्यकता नहीं है। आप CREATE स्क्रिप्ट को परिभाषित कर रहे हैं (टेम्पलेट प्रारंभ बिंदु से) और जब इसे किसी डेटाबेस में तैनात किया जाता है, तो हार्ड सामग्री को इंजन के नीचे किया जाता है। –

0

वाह ... विश्वास नहीं कर सकता कि किसी ने इस समय उत्तर देने के लिए समय नहीं लिया है। यहां कुछ सरल बाधाओं के साथ टेबल निर्माण स्क्रिप्ट का नमूना दिया गया है।

CREATE TABLE [User] 
(
    UserID    INT    NOT NULL IDENTITY (1,1), 
    UserName   NVARCHAR(20) NOT NULL, 
    UserPassword  NVARCHAR(20) NOT NULL, 
    EmailAddress  NVARCHAR(50) NOT NULL, 
    Location   NVARCHAR(100), 
    MobileNumber  VARCHAR(10), 
    CreatedDate   DATETIME  NOT NULL  
     CONSTRAINT User_CreatedDate_DF DEFAULT     (GETDATE()), 
     CONSTRAINT User_UserID_PK  PRIMARY KEY CLUSTERED (UserID), 
     CONSTRAINT User_UserName_UQ  UNIQUE     (UserName), 
     CONSTRAINT User_EmailAddress_CK CHECK     (EmailAddress LIKE '%@%.%'), 
     CONSTRAINT User_MobileNumber_CK CHECK     (MobileNumber LIKE '[2-9][0-9][0-9][2-9][0-9][0-9][0-9][0-9][0-9][0-9]') 
) 

आप अपनी जांच बाधाओं में एम्बेड करने के लिए फ़ंक्शंस का उपयोग कर सकते हैं, लेकिन फिर से, यह एक सरल निष्पक्ष है।

+1

उत्तर देने के लिए समय निकालने के लिए धन्यवाद, लेकिन, दुर्भाग्यवश, क्रिएट टेबल स्टेटमेंट के हिस्से के रूप में बाधाओं को जोड़ना वीएसडीबी प्रोजेक्ट में अनुमति नहीं है और यहां तक ​​कि यदि यह था, तो यह प्रत्येक डेटाबेस के लिए अलग-अलग फाइलों को रखने में प्रयोजनों को हरा देगा ऑब्जेक्ट, जो हैं: 1. स्रोत नियंत्रण के माध्यम से सुरक्षा और 2. अपग्रेड प्रक्रिया में तुलना करने के लिए अलग-अलग ऑब्जेक्ट्स रखना। मेरा गोमांस यह है कि उन व्यक्तिगत वस्तुओं को फाइलों के रूप में बनाना एक समय लेने वाला व्यायाम है। एक टेबल डिजाइनर के साथ, मैं कुछ मिनटों में फाइलों के रूप में एक टेबल और सभी बाधाओं और संबंधित वस्तुओं को बना सकता था। –

+0

और बीटीडब्लू, मुझे अच्छी तरह से पता है कि टेबल निर्माण स्क्रिप्ट को बाधाओं के साथ कैसे लिखना है, लेकिन धन्यवाद वही ... मैं भी आश्चर्यचकित हूं कि मुझे केवल 2 जवाब मिल गए हैं। विशेष रूप से आश्चर्यचकित है कि एमएस से किसी से जवाब नहीं मिल सकता है, शायद विजुअल स्टूडियो टीम पर। ओह ठीक है .. –

1

तरह से मैं VS2010 में डेटाबेस परियोजना का उपयोग है:

  1. एसक्यूएल सर्वर प्रबंधन स्टूडियो के साथ सब कुछ बनाएँ।
  2. इसे मेरे डेटाबेस प्रोजेक्ट में सिंक्रनाइज़ करें।
  3. जब मुझे कुछ बदलने की ज़रूरत है, तो इसे SQL सर्वर प्रबंधन स्टूडियो में करें।
  4. अपनी डेटाबेस प्रोजेक्ट को सिंक्रनाइज़ करने के लिए स्कीमा तुलना का उपयोग करें।
1

मैंने अभी देखा है कि वीएस 11 बीटा में अब एक डिजाइनर शामिल है, हालांकि यह किनारों के आसपास मोटा है (उदाहरण के लिए, रिश्ते, अभी भी हाथ से टाइप करने की आवश्यकता है)।

+0

अरे, प्रतिक्रिया के लिए धन्यवाद। यह उत्साहजनक लगता है! इसे जांचना होगा। हमारे पास विशेष रूप से, अपडेट और बाधाओं के साथ अन्य गंभीर समस्याएं हैं। मैं इतने लंबे समय से बाहर रहा हूं, मुझे सटीक मुद्दों को नहीं पता है, लेकिन यह लगभग उतना उपयोगी नहीं है जितना हमने सोचा था कि यह तब होगा जब हम इसके प्रति प्रतिबद्ध होंगे। उम्मीद है कि उन्होंने उन मुद्दों को भी संबोधित किया है। –

0

जैसा कि मैंने here पर टिप्पणी की, वीएस -2010 संदर्भ में कहा गया है कि इस document में Table Designer मौजूद है।

लेकिन किसी कारण से, कोई फर्क नहीं पड़ता परियोजना की किस तरह मैं (सर्वर परियोजना 2008/2005, डेटाबेस परियोजना 2008/2005) मैं Table Designer नहीं दिखाया जा रहा प्राप्त कर सकते हैं पैदा करते हैं।

+0

मुझे लगता है कि मूल रूप से एसएसएमएस से टेबल डिजाइनर है। मुझे लगता है कि यह एक SQL सर्वर उदाहरण या एक एमडीएफ फ़ाइल के साथ बातचीत के लिए डिज़ाइन किया गया है, न कि एक VSTS डेटाबेस प्रोजेक्ट के लिए। यह एसएसएमएस (या मुक्त संस्करण) खोलने, तालिका को डिजाइन करने और एसक्यूएल कोड को कॉपी करने से अलग नहीं होगा जो उपकरण प्रोजेक्ट फाइलों में उत्पन्न होता है। आपको अभी भी अलग-अलग कोड फ़ाइलों के रूप में बाधाओं के लिए कोड को मैन्युअल रूप से बनाए रखना होगा। आप और मैं दोनों मानते हैं कि सभी तालिका संबंधित फाइलों को बनाए रखने के लिए डिज़ाइन टूल के लिए यह बेहतर होगा। मुझे संदेह नहीं होगा कि ईएफ के बदले डीबी परियोजना बेल पर मर जाती है या नहीं। –