نامگذاری در پایگاه داده

رعایت اصول نامگذاری در پایگاه داده در قابلیت توسعه‌ی نرم‌افزار اثربخش است. انتخاب نام‌های بامعنی و کوتاه و در عین حال نزدیک به زبان انسان از اصول نخست در طراحی پایگاه داده به شمار می‌روند.
با وجود اینکه استانداردی فراگیر که تمامی برنامه‌نویسان بر آن اتفاق نظر داشته باشند تهیه نشده است، استانداردهای مورد استفاده در نرم‌افزارهای بزرگ مانند WordPress یا نمونه‌های پایگاه داده‌ی محصولاتی مانند SQL Server هر یک توسط گروهی از برنامه‌نویسان به‌کارگیری می‌شوند.
آنچه در ادامه مشاهده می‌کنید استانداردهایی شخصی است که ممکن است موردپسند همه‌ی توسعه‌دهندگان نباشد. نکته‌ی اساسی تعریف یک استاندارد و پایبندی به آن است.

نام جدول‌ها

پیشنهاد من استفاده از نام جمع برای جدول‌هاست. برای مثال استفاده از Users بر User و Orders بر Order برتری دارد. برای معنی‌دار شدن برخی از Queryها استفاده از Alias می‌تواند مفید باشد:

SELECT * FROM Orders;
SELECT employee.FirstName FROM Users employee;

نام ستون‌ها

با توجه به اینکه نام ستون‌ها در هر ردیف معنی دارند بهتر است نام ستون‌ها مفرد آورده شوند.
آوردن نام جدول یا کوتاه‌شده‌ی آن در نام ستون‌ها توصیه نمی‌شود.

جداکردن کلمه‌ها

برای جداکردن کلمه‌ها دو روش متداول وجود دارد. نخست استفاده از PascalCase و روش دیگر استفاده از حروف کوچک و جدا کردن کلمه‌ها با کمک زیرخط از یکدیگر.
پیشنهاد من استفاده از PascalCase است که عمومی‌تر از روش دوم به نظر می‌رسد:

SELECT * FROM OrderRows;
SELECT LastName, BirthDate FROM Users;

پیشوند و پسوندها

استفاده از پیشوندها و پسوندها باعث طولانی شدن و کاهش خوانایی نام‌ها می‌شوند. در صورت لزوم، استفاده از پسوند بر پیشوند برتری دارد.
استفاده از نام Schema یا Namespace به عنوان پیشوند جدول‌ها می‌تواند نیازهای گروه‌بندی جدول‌ها را برطرف کند. چنانچه پایگاه داده از Namespaceها پشتیبانی نمی‌کند، می‌توان از پیشوندی کوتاه و جداشده با زیرخط بهره‌گیری نمود.

SELECT * FROM ord_OrderRows;
SELECT LastName, BirthDate FROM usr_Users;
این نوشته در پایگاه داده ارسال و برچسب شده است. افزودن پیوند یکتا به علاقه‌مندی‌ها.

۸ دیدگاه برای نامگذاری در پایگاه داده

  1. Netbaran می‌گوید:

    سلام، وبلاگ بسیار خوب و مفیدی دارید. ممنون از زحمات و به اشتراک گذاشتن مطالب بسیار عالی.
    موفق باشید.

  2. زمان می‌گوید:

    افرادی مثل من (که برنامه نویسی بلد نیستند) با استفاده از امکانات کنترل پنل میزبانی، پایگاه داده ها را به صورت “هلو بپر تو گلو” می سازند!

    • امیرمسعود ایرانی می‌گوید:

      زمان گرامی
      از بازخورد شما سپاسگزارم
      این مطلب تلاش دارد تا استانداردهایی را برای نامگذاری پایگاه داده تعریف کند به گونه‌ای که توسعه‌ی نرم‌افزار و استفاده از آن برای کاربران نهایی آسان‌تر شود.

  3. مرتضی می‌گوید:

    سلام
    برای نام جداول بهتره ازنام منفرد استفاده بشه
    نمونش پایگاه اده AdventureWorks

  4. مرتضی می‌گوید:

    درضمن پیشوند و یا پسوند گذاشتن کاملا اشتباست
    نام ستون باید منفرد باشد نه بهتر است منفرد باشد
    در مورد فاصله‌ها و تو رفتگی بهتر از Add ins استفاده کرد
    مثل sql prompt شرکت Red Gate

    • امیرمسعود ایرانی می‌گوید:

      با تشکر از بازخورد شما

      بنده ابتدا عرض کردم برنامه‌نویسان نظرات متفاوتی دارند
      آنچه می‌خوانید استانداردهایی است که به نظر من بهتر هستند
      در هر حال هر کس باید استانداردهایی برای خود مشخص کند و به آن پایبند باشد

  5. Mohammad می‌گوید:

    قاعده اصلی در نام گذاری جداول مفرد بودن آن است و استاندارد شخصی نیز مردود است

    • امیرمسعود ایرانی می‌گوید:

      با سلام
      در برنامه نویسی هیچ قاعده اصلی وجود ندارد
      بر خلاف نظر شما بسیاری از سیستم‌های بزرگ از جمله وردپرس( محبوب‌ترین CMS در دنیا ) و لاراول( محبوب‌ترین فریم‌ورک php در دنیا ) از نام‌های جمع برای جداول استفاده می‌کنند.
      موارد گوناگون دیگر هم قطعا وجود دارد.
      ولی همان طور که عرض کردم هیچ قاعده‌ی اصلی وجود ندارد.

پاسخ دادن به مرتضی لغو پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

شما می‌توانید از این دستورات HTML استفاده کنید: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>