سؤال

لقد لاحظت أن الكثير من الشركات تستخدم بادئة لجداول قاعدة بياناتها.على سبيل المثالسيتم تسمية الجداول باسم MS_Order، وMS_User، وما إلى ذلك.هل هناك سبب وجيه للقيام بذلك؟

السبب الوحيد الذي يمكنني التفكير فيه هو تجنب تضارب الأسماء.ولكن هل يحدث هذا حقا؟هل يقوم الأشخاص بتشغيل تطبيقات متعددة في قاعدة بيانات واحدة؟هل هناك أي سبب آخر؟

هل كانت مفيدة؟

المحلول

في SQL Server 2005 والإصدارات الأحدث، تلغي ميزة المخطط الحاجة إلى أي نوع من البادئات.يمكن العثور على مثال جيد لاستخدامها من خلال القراءة عن المخططات في AdventureWorks.

في بعض الإصدارات الأقدم من خادم SQL، قد يكون وجود بادئة لإنشاء مساحة اسم زائفة مفيدًا مع قواعد البيانات التي تحتوي على الكثير من الجداول.

بخلاف ذلك لا أستطيع أن أرى هذه النقطة حقا.

نصائح أخرى

وشخصيا، لا أرى أي قيمة في ذلك. في الواقع، انها المشكله لميزات مثل التحسس لأن كل شيء يبدأ مع MS_. :) ماجستير يتفق معي جدا.

وغالبا ما يكون

ومخططات ضخمة العديد من الجداول لأغراض مماثلة، ولكن متميزة. وهكذا، ومختلف "مجزأة" اصطلاحات التسمية.

والرتق، لم تحصل المشاركة الأولى: -)

وحتى عندما تكون قاعدة البيانات يحتوي فقط على تطبيق واحد، البادئات يمكن أن تكون مفيدة في تجميع مثل أجزاء من تطبيق معا. حتى الجداول التي containtain المعلومات كوتومير قد تكون مسبوقة ب cust_، وتلك التي تحتوي على معلومات مستودع قد تكون مسبوقة ب inv_ (لجرد)، وتلك التي تحتوي على معلومات finacial قد تكون مسبوقة ب fin_، الخ.

ولقد عملت على أنظمة حيث هناك قاعدة بيانات موجودة لتطبيق التي تم إنشاؤها والتي تحتفظ بها شركة مختلفة، ونحن قد تحتاج إلى إضافة برنامج آخر يستخدم كميات كبيرة من نفس البيانات مع عدد قليل من الجداول إضافية من جانبنا، وذلك في هذه الحالة وجود بادئة محددة التطبيق يمكن أن تساعد في الانفصال.

وقواعد البيانات بشكل عرضي قليلا إلى السؤال الأصلي، رأيت استخدام البادئات للإشارة إلى نوع البيانات التي مائدة تحتجز. سأكون هناك بادئة لجداول البحث التي من الواضح أنها ثابتة جدا سواء من حيث الحجم والمحتوى وبادئة مختلفة للجداول التي تحتوي على البيانات المتغيرة. ويمكن تقسيم هذا بدوره إلى وجود البادئة واحد للجداول التي تمت إضافتها إلى ولكن لم يتغير حقا مثل قطع الأشجار، وأوامر معالجتها، معاملات العملاء وغيرها، ووآخر لمزيد من البيانات المتغيرة مثل التوازن عميل أو أيا كان. الجداول الارتباط يمكن أن يكون أيضا البادئة الخاصة بهم للفصل بها أيضا.

وأنا لم أر اصطدام التسمية، لأنها عادة لا معنى لوضع الجداول من تطبيقات مختلفة في نفس مساحة قاعدة البيانات. إذا كان لديك نوعا من مكتبة قابلة لإعادة الاستخدام التي يمكن دمجها في تطبيقات مختلفة، ولعل هذا قد يكون سببا، ولكن أنا لم أر أي شيء من هذا القبيل.

ورغم ذلك، الآن بعد أن أفكر في ذلك، وهناك بعض رخيصة استضافة المواقع مقدمي الخدمات والتي تسمح فقط للمستخدمين لإنشاء عدد قليل جدا من قواعد البيانات، لذلك سيكون من الممكن لتشغيل عدد من التطبيقات المختلفة باستخدام قاعدة بيانات واحدة، لذلك طالما أسماء لم تصطدم (وأن مثل هذه الاتفاقية التقديم يساعد بالتأكيد).

وتطبيقات متعددة باستخدام جدول معين، صحيح. البادئات تمنع اسم الاصطدام. أيضا، فإنه يجعل من بسيطة إلى حد ما إلى جداول النسخ الاحتياطي والاحتفاظ بها في نفس قاعدة البيانات، مجرد تغيير بادئة وسوف الاحتياطية الخاصة بك أن تكون وظيفية بالكامل، وما إلى ذلك وبصرف النظر عن ذلك، انها ممارسة جيدة فقط.

والبادئات هي وسيلة جيدة لفرز والتي ترتبط كائنات SQL التي التطبيق عندما متعددة التطبيقات تراجع في نفس قاعدة البيانات.

ولقد مسبوقة أيضا كائنات SQL مختلفة داخل نفس التطبيق لتسهيل إدارة أسهل للأمن. أي جميع الكائنات admin_ ضرورة تطبيق هذا الأمن وبقية تحتاج شيء آخر.

والبادئات يمكن أن يكون مفيد للبشر، وأدوات البحث والبرامج النصية. إذا كان الوضع هو واحد بسيط، ولكن، ربما هناك استخدام لهما على الإطلاق.

وانها غالبا ما تستخدم إذا كان العديد من التطبيقات وتقاسم قاعدة بيانات واحدة. على سبيل المثال، إذا قمت بتثبيت وورد، والبادئات جميع الجداول مع "wp_". هذا أمر جيد إذا كنت تريد التطبيقات الخاصة بك لتبادل البيانات بسهولة جدا (الدورات في جميع التطبيقات في الشركة، على سبيل المثال).

وهناك أفضل السبل لتحقيق هذا ومع ذلك، وأنا لا بادئة أسماء مائدتي، حيث أن كل تطبيق لديها انها قاعدة بيانات مكتفية ذاتيا الخاصة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top