यहाँ कैसे मैं यह कर दिया गया है:क्या MySQL के लिए नामकरण सम्मेलन है?
- तालिका नाम लोअर केस हैं, शब्दों को अलग करने के अंडरस्कोर का उपयोग करता है, और विलक्षण हैं (जैसे 'foo', 'foo_bar', आदि
- मैं आम तौर पर (हमेशा) एक ऑटो वृद्धि पीके है। मैं निम्नलिखित सम्मेलन का उपयोग करता हूं: tablename_id (उदाहरण के लिए 'foo_id', 'foo_bar_id', आदि)
- जब किसी तालिका में कोई कॉलम होता है जो एक विदेशी कुंजी है, तो मैं बस उस के कॉलम नाम की प्रतिलिपि बनाता हूं जो भी टेबल से आया वह कुंजी से। उदाहरण के लिए, तालिका 'foo_bar' में एफके 'foo_id' है (जहां 'foo_id' 'foo' का पीके है)
- एफएफ को एनएफओ को परिभाषित करते समय आरसी रेफरेंसियल अखंडता, मैं निम्नलिखित का उपयोग करता हूं: tablename_fk_columnname (उदा। उदाहरण 3 आगे बढ़ाना, यह 'foo_bar_foo_id' होगा)। चूंकि यह एक टेबल नाम/कॉलम नाम संयोजन है, इसलिए यह डेटाबेस के भीतर अद्वितीय होने की गारंटी है।
- मैं इस तरह कॉलम आदेश: पीकेएस, FKS, फिर कॉलम के बाकी वर्णानुक्रम
वहाँ एक बेहतर, अधिक मानक यह करने के लिए रास्ता नहीं है?
ऑटो वृद्धि पीके जुस के लिए उपयोग करना गलत है टी "आईडी"? क्यूं कर? कॉलम का नाम केवल तालिका के संदर्भ में है। इसलिए मेरे पास प्रत्येक तालिका में एक "आईडी" है, और इसमें FK के लिए कई id_ हो सकते हैं। –
Zbyszek
@Zbyszek मुझे लगता है कि इसके खिलाफ सबसे सरल कारण केवल स्थिरता/सादगी के लिए है। 'Id_tableB' => * ओह नहीं * ** अलग-अलग नामित कॉलम **' id' होने की बजाय, 'id_tableB' =>' id_tableB' की स्थिरता केवल neater दिखती है ... या ओपी के रूप में यह करता है: 'foo_id' => 'foo_id' की बजाय' foo_id' => 'id' – mmcrae