2010-07-15 48 views
15

जब डीबी की सारणी और स्कीमा नामकरण एकवचन या बहुवचन का उपयोग करना सबसे अच्छा है। उदाहरण के लिए । क्या यह ग्राहक या ग्राहक होना चाहिए?डाटाबेस टेबल नामकरण, बहुवचन या एकवचन

और जब नामकरण ग्राहक या ग्राहक जैसे पूंजी होनी चाहिए? नामकरण के संबंध में कोई भी सर्वोत्तम अभ्यास?

+0

इसके अलावा के समान: [? डाटाबेस, टेबल और कॉलम नामकरण सम्मेलनों] (http://stackoverflow.com/ प्रश्न/7662/डेटाबेस-टेबल-और-कॉलम-नामकरण-सम्मेलन) – Mike

+0

[तालिका नामकरण दुविधा: सिंगुलर बनाम बहुवचन नाम] (http://stackoverflow.com/q/338156/90527) द्वारा डुप्लिकेट किया गया, लेकिन उसे मिला और अधिक ध्यान। आपके पहले पैराग्राफ के लिए – outis

उत्तर

20

यह प्रश्न धार्मिक युद्ध के लिए कहता है।

मुझे कोई संदेह नहीं है क्योंकि बहुवचन होना चाहिए ...

  • एक तालिका पंक्तियों का एक संग्रह है।
  • एसक्यूएल सिंटैक्स अधिक प्राकृतिक हो जाता है - SELECT * FROM CustomersSELECT * FROM Customer के बजाय।
  • ओओपी के समानता - आपके पास कक्षा Customer है और Customers नामक ग्राहकों की एक सूची या अन्य संग्रह है।
  • SELECT * FROM Customers AS Customer WHERE Customer.FirstName = 'John' - Customers पूरे तालिका को संदर्भित करता है जबकि Customer वर्तमान पंक्ति को संदर्भित करता है।

नकारात्मक बातें

एक विकास के दौरान एकवचन और बहुवचन के बीच कई बार स्विच करने के लिए है। आप एक वैचारिक मॉडल से शुरू कर सकते हैं - उदाहरण के लिए एक इकाई संबंध मॉडल - जहां प्राकृतिक विकल्प इकाई Customer नाम देना है। इस मॉडल से आप डेटाबेस उत्पन्न करते हैं और Customers तालिका प्राप्त करने के लिए नाम को बहुवचन करना होगा। अंत में आप अपना पसंदीदा ओ/आर मैपर चुनते हैं और इसे Customer नामक कक्षा प्राप्त करने के लिए नाम को फिर से एकवचन करना होगा।

आप इस मैन्युअल रूप से करना है, क्योंकि उपकरण समर्थन (उदाहरण के लिए EntityFramework पहले .NET 4.0 करने के लिए) यह तालिका नाम विलक्षण रखने के लिए एक उचित विकल्प हो सकता है की कमी है, लेकिन therfore बदले बिना Customers के बजाय एक वर्ग Customer मिलता है, तो हाथ से

+8

+1, भले ही आपकी राय गलत है :) – AakashM

+2

मैंने एकवचन नामकरण का उपयोग किया लेकिन रेलों में स्विच करने के बाद जहां बहुवचन मानक है बहुवचन नामकरण अधिक प्राकृतिक लगता है। यह – Tarscher

+0

प्रश्नों के लिए विशेष रूप से सच है, यह अधिक प्राकृतिक लगता है लेकिन मैं सोच रहा था कि इसके बाद विकास आदि में इसका कोई नकारात्मक प्रभाव पड़ता है ... –

7

एकवचन नामकरण।

यह सब टुपल्स के बारे में है, टेबल नहीं, और एक ट्यूपल एक ग्राहक है, न कि ग्राहक। मैं भी कम मामलों में नामकरण पसंद करता हूं, लेकिन किसी भी कारण से, मैंने इसे स्कूल में ऐसा ही सीखा।

अंत में, जैसा कि अन्य ने कहा, यह वरीयता का विषय है। बहुवचन या एकवचन का उपयोग करने के विकल्प की तुलना में अधिक महत्वपूर्ण है, यह सुनिश्चित करना और सभी तालिकाओं के लिए वही तरीका करना है - यदि आप पुलर और एकवचन नामकरण करते हैं, तो यह वास्तविक गड़बड़ है।

4

की काफी बात आप एक recipe.ingredient या एक recipes.ingredient चयन करें रहा है?

... या आप एक ingredientrecipesrecipe से एक ingredient के बजाय से चयन करते हैं।

क्या आप recipe.ingredient सूची, या recipes.ingredient सूची का चयन करते हैं?

... या आप ingredient सूचीसे ingredient सूची recipe से सूची में चुनते हैं?

मुझे लगता है कि सम्मेलन स्वयं ही सम्मेलन ही महत्वपूर्ण है। निजी तौर पर, मैं एकवचन, निचले केस तालिका के नाम पसंद करता हूं, लेकिन मैं उस विकल्प की जोरदार रूप से बचाव नहीं कर रहा हूं।

0

मेरे चुनाव एकवचन कर रहे हैं और TitleCase :)

ग्राहक एक इकाई है। तालिका कई इकाई का तार्किक संग्रह है। तो बहुवचन पसंद किया जाता है।

तालिका नामों के लिए पास्कल केस बेहतर है। यानी, ग्राहकमास्टर।

यह tblCustomerMaster जैसे उपसर्ग का उपयोग करना पसंद है।

को समूह नाम का उपयोग कर रहे हैं, तो के रूप में उपसर्ग तो की तरह, NEWCustomer बड़े अक्षरों में इसका इस्तेमाल करते हैं, OLDCustomer

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