সারণী এবং দর্শনগুলির নামকরণ করার সময় আমার কোন মানদণ্ড অনুসরণ করা উচিত?


20

সারণী এবং দর্শনগুলির নামকরণ করার সময় আমার কোন মানদণ্ড অনুসরণ করা উচিত? উদাহরণস্বরূপ, টেবিলের নামগুলির শুরুতে tbl_ এর মতো কিছু রাখা ভাল ধারণা? আমার কি কোড / লুক টেবিলগুলি সিটি_, লুট_, বা কোড_ এর মতো কোনও উপায়ে ডিজাইন করা উচিত? অন্য কোন করণীয় / করণীয় কি আছে?

আমি এমএস এসকিউএল সার্ভার ব্যবহার করছি এবং অনেকগুলি টেবিলের সাথে অনেকগুলি ডাটাবেস রয়েছে যাতে কিছু সমর্থনকারী যুক্তিযুক্ত হিসাবে আমরা একটি মান হিসাবে ব্যবহার করতে পারি এমন কিছু ভাল লাগবে।

উত্তর:


29

ঠিক আছে, প্রথমে কোনও টেবিলের নামের সামনে টিবিএল রাখেনি। এটি একটি টেবিল, আমরা ইতিমধ্যে এখন যে। এটিকে হাঙ্গেরিয়ান নোটেশন বলা হয় এবং লোকেরা 5+ বছর আগে এটি করা বন্ধ করে দিয়েছিল।

এটি কী তার ভিত্তিতে কেবলমাত্র বস্তুকে কল করুন। যদি কোনও টেবিল কর্মচারী ডেটা ধারণ করে তবে এটিকে "কর্মচারী" বলে। এটি কম্পিউটার সম্পর্কে তথ্য রাখলে এটিকে "কম্পিউটার" বলে call যদি এটি কম্পিউটারকে কর্মচারীদের কাছে মানচিত্র দেয় তবে এটিকে "কর্মচারী কম্পিউটার" বা "কম্পিউটারের কম্পিউটার" বলা হয় (ব্যক্তিগতভাবে আমি "কর্মচারী কম্পিউটার" আরও ভাল পছন্দ করি)।

ব্যবহারের জন্য কোনও আসল অধিকার নামকরণের কনভেনশন নেই (হাঙ্গেরিয়ান নোটেশনটি ব্যবহার না করা ব্যতীত)। যতক্ষণ না অবজেক্টের নামগুলি বোঝায় যে এটি কী গুরুত্বপূর্ণ।


11
এগুলি ছাড়াও, দয়া করে টেবিলগুলির নাম বহুবচন বিশেষ্য হিসাবে রাখবেন না, যেমন আমি কর্মচারী, ক্যাম্পিউটার্সের উদাহরণগুলি দেখেছি .. আমরা সবাই জানি টেবিলগুলিতে একটি নয়, অনেকগুলি সারি পাওয়ার কথা ...
মেরিয়ান

1
আপনি কেন একটি টেবিলের মতামত তৈরি করবেন? সমস্ত দর্শন হ'ল একটি সঞ্চিত নির্বাচনী বিবৃতি। আপনি যদি কোনও সূচকযুক্ত ভিউ ব্যবহার না করেন তবে ডেটা কোনও দৃশ্যের পিছনে রূপায়িত হয় না। আমি প্রায় কখনও দেখা ব্যবহার করি না, কখনও নেই। অবশ্যই এটি করার কোনও কার্যকারিতা সুবিধা নেই।
mrdenny

2
যখন আমরা দুটি টেবিলের সাথে যোগ দিতে বা কোডের মানগুলি মানব পাঠযোগ্য মানগুলিতে অনুবাদ করার মতো কিছু করতে চাই তখন আমরা ভিউ ব্যবহার করি। দ্বিতীয় পরিস্থিতিটি হ'ল এটিই যেখানে আপনি একক নাম দিয়ে শেষ করবেন।
বেথ হোয়াইটেল


1
@ মারিয়ান: আমি বহুবচন ব্যবহার করি কারণ তারা প্রশ্নগুলি আরও প্রাকৃতিকভাবে পড়তে এবং কীওয়ার্ডগুলির সাথে সংঘর্ষগুলি সমাধান করে। আমি যে সকল সিস্টেমে কাজ করেছি তার একটি অর্ডার সত্তা রয়েছে। বহুবচনগুলি ব্যবহারের ফলে সারণির নামটি তৈরি হয় ordersনা orderএবং প্রতিবার ব্যবহারকারীরা সারণীর নামটি উদ্ধৃত করে তা এড়ানো যায়। এটি groupএবং অন্যান্য কীওয়ার্ডগুলিতেও প্রযোজ্য । ভাগ্যক্রমে, কয়েকটি সংখ্যক কীওয়ার্ড সাধারণ সংস্থার সাথে সংঘর্ষে লিপ্ত হয়।
বিলথোর

13

অনুমতি এবং গোষ্ঠীকরণ উভয়ের জন্যই আমরা স্কিমা ব্যবহার করি (এসকিউএলে তাদের নামফলক হিসাবে মনে করি)। সুতরাং "টিবিএল" ইত্যাদির পরিবর্তে আমাদের রয়েছে

  • Data.Thing
  • Data.ThingHistory
  • Data.Stuff

কোনও কোড ডেটা স্কিমাতে যায় না। ডেটা স্কিমার বাইরে কোনও টেবিল লাইভ নেই। এটি আপনি চাইলে লুকআপ বা স্টেজিং স্কিমাটি অবশ্যই বাড়িয়ে দিতে পারেন।

দর্শনের জন্য আমরা ব্যবহার করি vwতবে এটি ছিল এসকিউএল সার্ভার 2000-এ সারণী থেকে তাদের পার্থক্য করা এবং এটি এখন দুর্দান্ত উত্তরাধিকার


3
স্কিমার সুপারিশ করার জন্য +1। 100 টেবিলের সাহায্যে বৃহত ডিবি বজায় রাখার সময় এটি কার্যকর হবে। আমরা কার্যকরী
গোষ্ঠীকরণের

5

ব্যক্তিগতভাবে আমি ফ্যান বিডেংংয়ের দুর্দান্ত অনুরাগী , যার অর্থ এখানে নামটি অন্য বৈধ নামের শুরু হওয়ার অনুমতি নেই।

এবং দ্বিতীয় দুটি নামের মধ্যে হামিংয়ের দূরত্ব একাধিক ভিন্ন বর্ণের চেয়ে ভাল।

হ্যাঁ এগুলি প্রাক্কলিত কাল থেকে নিয়ম, তবে তারা জীবনকে আরও সহজ করে তোলে।

এবং তৃতীয় নামগুলি অবশ্যই উচ্চারণযোগ্য, বা আপনি পাগল হয়ে যাবেন, যখন ভয়েস স্বীকৃতি সত্য হয়ে উঠবে।


2
ভয়েস স্বীকৃতি সত্য হয়ে উঠলে আমি যাই হোক পাগল হয়ে যাব। :-)
বেথ হোয়াইটেল

আপনি যদি টেলিটন সমর্থন করেন কেবল
bernd_k

1
ভয়েস স্বীকৃতি যখন প্রায় আসে, আমি ট্রাক ড্রাইভার হয়ে যাব। সে বা এক পাগল সহবাসী।
mrdenny

আপনি আরও বিস্তারিতভাবে ব্যাখ্যা করতে পারেন (সম্ভবত একটি উদাহরণ সহ) "ফানো বিডিংং" কী?
নিক চ্যামাস

1
@ নিকচ্যামাস আমি ইংরাজীতে ভাবি আমরা এটিকে শ্যানন-ফানো কোডিং বলি ।
আইয়েন স্যামুয়েল ম্যাকলিন বয়স্ক

2

আমি জানি না যে সেখানে কোনও "সেরা" নামকরণের সম্মেলন আছে কারণ এটি ব্যক্তিগত পছন্দ এবং উন্নয়নের স্বাচ্ছন্দ্যে সত্যই উত্সাহিত হয়। আমার পরামর্শ হল নামকরণের সম্মেলনটি বেছে নেওয়া এবং এটি মেনে চলা। যদি আপনি শব্দগুলিকে একটি আন্ডারস্কোর দিয়ে আলাদা করতে চান তবে আপনার সমস্ত ডাটাবেস অবজেক্টে এটি করুন। আপনি যদি উটকেস ব্যবহার করতে চান তবে আপনার সমস্ত ডাটাবেস অবজেক্টে এটি করুন।

আমার দোকানে আমরা নিম্নলিখিত নিয়মগুলি মেনে চলি:

আমরা শব্দগুলিকে আন্ডারস্কোর দিয়ে আলাদা করি এবং সমস্ত ছোট হাতের অক্ষর ব্যবহার করি।
আমাদের টেবিলের নামগুলি সেগুলি বর্ণনা করে: dbo.Press, dbo.invoice।
আমাদের বহু-বহু-টেবিলের নামগুলি সেগুলিও বর্ণনা করে ( মিমি যোগ করার সাথে অনেকের মধ্যে অনেকের মধ্যে ম্যাপিং রয়েছে বলে চিহ্নিত করা হয়: dbo.Press_mm_address user আমাদের ব্যবহারকারী-সংজ্ঞায়িত সঞ্চিত পদ্ধতিগুলি অবজেক্ট এবং সম্পাদিত ক্রিয়া উভয়ই বর্ণনা করে: usp_Press_select , usp_address_select_by_city আমাদের মতামত এবং ফাংশনগুলি সঞ্চিত পদ্ধতি হিসাবে একই নিয়ম অনুসরণ করে Ourআমাদের সূচীতে টেবিল, কী কলামগুলি (ক্রমে) এবং ক্লাস্টারযুক্ত / নন-ক্লাস্টার্ডের একটি ইঙ্গিত রয়েছে: ix_Press_last_name_first_name_nc

কেবলমাত্র এটিই আমরা আমার দোকানে ব্যবহার করি, এর অর্থ এই নয় যে এই বিধিগুলি আপনার পক্ষে সঠিক। আপনি এবং আপনার বিকাশকারী দলের সাথে সম্মত এমন কিছু বাছাই করুন যার সাথে বিকাশ করা কার্যকর এবং সহজ উভয়ই, এবং আপনি যে নামকরণের কনভেনশন স্থির করবেন তা জানার এবং ব্যবহারের সংস্কৃতি স্থাপন করুন। আমাদের ক্ষেত্রে এটিতে একটি ডাটাবেসে তৈরি যে কোনও অবজেক্টের কোড কোড রিভিউ অন্তর্ভুক্ত রয়েছে। সময়ের সাথে সাথে, একটি নথিভুক্ত নামকরণ কনভেনশন এবং পিয়ার কোড পর্যালোচনার সংমিশ্রণটি কনভেনশন থেকে কম এবং কম বিচ্যুতির দিকে পরিচালিত করেছে।

আমি আশা করি এই "উত্তর-উত্তর" কোনওভাবে সহায়তা করবে।


2

আমি বছরের পর বছর ধরে এগুলিতে সন্তুষ্ট

  • টেবিলের নাম: ছোট ক্যাপ এবং আন্ডারস্কোর, একক {গ্রাহক, পণ্য}
  • অনেকের কাছে অনেক সম্পর্কের টেবিলের নাম: টেবিলের নাম 1_সারণযোগ্য নাম 2: {গ্রাহক_প্রডাক্ট}
  • দর্শন: ছোট ক্যাপগুলি শেষের দিকে v যুক্ত হয়েছে {গ্রাহকভি, প্রোডাক্টভি, প্রোডাক্ট_গ্রুপভি}
  • সঞ্চিত সংগ্রহগুলি: টেবিলের নাম এবং ফাংশন {গ্রাহক_নির্বাচিত, গ্রাহক_সামগ্রী, গ্রাহক_সংশ্লিষ্ট, গ্রাহক_পাদিত}

যদি আপনার একটি সস্তা শেয়ার্ড হোস্টিং প্যাকেজ থাকে তবে আপনাকে আপনার সমস্ত বস্তুর সামনে প্রকল্পের সংক্ষিপ্তসারটি ব্যবহার করতে হবে, উদাহরণস্বরূপ, ডাটাবেস প্রশাসক সাইট, da_users, da_questions


কেন product_groupvএবং না product_group_vদেখার জন্য (আপনি যদি ভিউ এবং টেবিলগুলির এই স্বতন্ত্রতার উপর জোর দেন)?
ypercubeᵀᴹ

@ সাইপারকিউব কারণ আমি একটি অতিরিক্ত আন্ডারস্কোর টাইপ করতে খুব অলস এবং আমি টাইপিংগুলিতে সহজেই ভুল করি। আমি যখন আন্ডারস্কোর ব্যবহার করি তখন আমি শব্দগুলি সহজভাবে পড়ি এবং আমি টেবিলগুলি থেকে দৃষ্টি পৃথক করার জন্য ভি ব্যবহার করি, এবং ভি কোনও শব্দ নয় তাই আমি আন্ডারস্কোর ব্যবহার করি না .. এটি অসঙ্গত দেখাচ্ছে, হ্যাঁ, তবে আমি এই ফর্ম্যাটটিকে ব্যবহারিক বলে মনে করি।
Uğur Güşmüşhan
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.