2011-04-12 11 views
8

में एकाधिक फ़ील्ड पर अद्वितीय बाधा मुझे अपने प्रश्न के बारे में कोई जवाब नहीं मिला है, सभी अद्वितीय बाधाओं में एमएस एक्सेस शामिल नहीं है।एक्सेस 2003

सवाल यह है कि एमएस एक्सेस 2003 डेटाबेस में बहुपक्षीय क्षेत्रों पर एक अद्वितीय बाधा कैसे बनाएं?

यदि मेरी तालिका में कॉलम id, A, B, C, D, E, F हैं। मेरे पास कॉलम आईडी पर एक अनुक्रमणिका है, लेकिन मैं दोनों कॉलम A और B पर एक अद्वितीय बाधा सेट करना चाहता हूं। इसलिए, मेरे पास कॉलम A में डुप्लिकेट मान हो सकता है, बशर्ते कॉलम B में मान अलग-अलग हों।

मैं तनाव है कि मैं कॉलम A और B से श्रेणीबद्ध मूल्यों के साथ नया स्तंभ बनाने, और इस स्तंभ पर एक बाधा बनाने की तरह एक समाधान में कोई दिलचस्पी नहीं हूँ चाहते हैं। Access में

ALTER TABLE MyTable ADD 
    CONSTRAINT MyTable__key 
     UNIQUE (A, B); 

VBA का उपयोग करना::

उत्तर

19

आप यूआई के माध्यम से यह करने के लिए, डिजाइन ध्यान में रखते हुए तालिका खोलने चाहते हैं। इंडेक्स विंडो खोलें। नया इंडेक्स नाम दर्ज करें, कॉलम ए की पहचान करें, इंडेक्स को अद्वितीय के रूप में चिह्नित करें। फिर उस के नीचे एक दूसरी पंक्ति जोड़ें, उस पंक्ति पर इंडेक्स नाम निर्दिष्ट न करें, और कॉलम बी की पहचान करें। इंडेक्स विंडो बंद करें और तालिका को सहेजें।

अब आपके पास कॉलम ए और बी पर एक अद्वितीय अनुक्रमणिका है। उदा। एक & बी पर अपने अद्वितीय सूचकांक यहाँ कहा जाता है बोरिस:

enter image description here

+2

धन्यवाद, महान काम करता है। –

+0

धन्यवाद दोस्त। बड़ी मदद। –

6

ANSI-92 Query Mode में, इस एसक्यूएल DDL निष्पादित

CurrentProject.Connection.Execute _ 
    "ALTER TABLE MyTable ADD CONSTRAINT MyTable__key UNIQUE (A, B);" 
+2

यह बहुत अच्छा काम करता है, इसलिए मैं अपने जवाब upvoted है। लेकिन मैं @Damien_The_Unbeliever द्वारा उत्तर स्वीकार करूंगा, जो आपके समाधान के समान परिणाम देता है, क्योंकि वह एक स्पष्ट पहुंच समाधान देता है। भविष्य में यह उन लोगों के लिए अधिक उपयोगी हो सकता है जो एसक्यूएल नहीं जानते हैं और एक्सेस का उपयोग करना चाहते हैं। एक बार आपके समय के लिए धन्यवाद। –

+1

@ एमपीएकेल्स्की: हम्म - एसक्यूएल डीडीएल मानक एसक्यूएल है, इसलिए * किसी भी * एसक्यूएल उत्पाद पर काम करना चाहिए, और वीबीए "एक स्पष्ट एक्सेस समाधान" है जो किसी भी SQL उत्पाद पर काम नहीं करेगा लेकिन एक्सेस। क्या मैंने आपको दोनों दुनिया के सर्वश्रेष्ठ नहीं दिए हैं? ;) – onedaywhen

+2

हाँ मुझे पता है कि यह काम करता है। लेकिन यदि आप औसत एक्सेस उपयोगकर्ता पर विचार करते हैं, तो मैं तर्क दूंगा कि वह SQL के बारे में बहुत कुछ नहीं जानता है। कम से कम उस कंपनी में जिसके लिए मैं काम करता हूं। शायद मुझे इस बात पर जोर देना चाहिए कि जीयूआई समाधान सबसे उपयुक्त होगा। ;) –