قائمة الأطوال القياسية لحقول قاعدة البيانات

StackOverflow https://stackoverflow.com/questions/20958

  •  09-06-2019
  •  | 
  •  

سؤال

أقوم بتصميم جدول قاعدة بيانات وأسأل نفسي مرة أخرى نفس السؤال الغبي: ما المدة التي يجب أن يكون فيها الحقل الأول؟

هل لدى أي شخص قائمة بالأطوال المعقولة للحقول الأكثر شيوعًا, ، مثل الاسم الأول واسم العائلة وعنوان البريد الإلكتروني؟

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

المحلول

توصية W3C:

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

... ضع في اعتبارك أن الأسماء في بعض الثقافات يمكن أن تكون أطول بكثير من خاص بك.… تجنب الحد من حجم الحقل للأسماء في قاعدة البيانات الخاصة بك.على وجه الخصوص ، لا تفترض أن الاسم الياباني المكون من أربعة أحرف في UTF-8 سوف يتناسب مع أربعة بايت-من المحتمل أن تحتاج فعليًا إلى 12.

https://www.w3.org/International/questions/qa-personal-names

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

نصائح أخرى

لقد قمت للتو بالاستعلام عن قاعدة البيانات الخاصة بي والتي تحتوي على ملايين العملاء في الولايات المتحدة الأمريكية.

  • الحد الأقصى الاسم الأول كان الطول 46أذهب مع 50.(وبطبيعة الحال، كان 500 منهم فقط فوق سن 25 عامًا، وكانت جميعها حالات أدى فيها استيراد البيانات إلى تصفية المزيد من النفايات في هذا المجال.)

  • اسم العائلة كان مشابهًا للاسم الأول.

  • عناوين البريد الإلكتروني بلغ الحد الأقصى في 62 حرفًا.معظم الأطول كانت في الواقع قوائم بعناوين البريد الإلكتروني مفصولة بواسطة فاصلة فاصلة.

  • .عنوان الشارع الحد الأقصى في 95 حرفًا.كانت جميعها صالحة.

  • الأعلى مدينة كان الطول 35

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

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

ربما يقوم البعض بتصحيح أطوال الأعمدة

                            Min Max

Hostname                    1   255
Domain Name                 4   253
Email Address               7   254
Email Address [1]           3   254
Telephone Number            10  15      
Telephone Number [2]        3   26  
HTTP(S) URL w domain name   11  2083        
URL [3]                     6   2083    
Postal Code [4]             2   11
IP Address (incl ipv6)      7   45
Longitude                   numeric 9,6
Latitude                    numeric 8,6
Money[5]                    numeric 19,4

[1] Allow local domains or TLD-only domains
[2] Allow short numbers like 911 and extensions like 16045551212x12345
[3] Allow local domains, tv:// scheme
[4] http://en.wikipedia.org/wiki/List_of_postal_codes. Use max 12 if storing dash or space
[5] http://stackoverflow.com/questions/224462/storing-money-in-a-decimal-column-what-precision-and-scale

حديث طويل عن الأسماء الشخصية

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

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

بعض الأمثلة:

names: [
  {
    type:"POLYNYM",
    role:"LEGAL",
    given:"George",
    middle:"Herman",
    moniker:"Babe",
    surname:"Ruth",
    generation:"JUNIOR"
  },
  {
    type:"MONONYM",
    role:"SOBRIQUET",
    mononym:"The Bambino" /* mononyms can be more than one word, but only one component */
  },
  {
    type:"MONONYM",
    role:"SOBRIQUET",
    mononym:"The Sultan of Swat"
  }
]

أو

names: [
  {
    type:"POLYNYM",
    role:"PREFERRED",
    given:"Malcolm",
    surname:"X"
  },
  {
    type:"POLYNYM",
    role:"BIRTH",
    given:"Malcolm",
    surname:"Little"
  },
  {
    type:"POLYNYM",
    role:"LEGAL",
    given:"Malik",
    surname:"El-Shabazz"
  }
]

أو

names:[
  {
    type:"POLYNYM",
    role:"LEGAL",
    given:"Prince",
    middle:"Rogers",
    surname:"Nelson"
  },
  {
    type:"MONONYM",
    role:"SOBRIQUET",
    mononym:"Prince"
  },
  {
    type:"PICTONYM",
    role:"LEGAL",
    url:"http://upload.wikimedia.org/wikipedia/en/thumb/a/af/Prince_logo.svg/130px-Prince_logo.svg.png"
  }
]

أو

names:[
  {
    type:"POLYNYM",
    role:"LEGAL",
    given:"Juan Pablo",
    surname:"Fernández de Calderón",
    secondarySurname:"García-Iglesias" /* hispanic people often have two surnames. it can be impolite to use the wrong one. Portuguese and Spaniards differ as to which surname is important */
  }
]

الأسماء المعينة والأسماء الوسطى والألقاب يمكن أن تكون كلمات متعددة مثل "Billy Bob" Thornton, ، أو Ralph "Vaughn Williams".

أود أن أقول أن يخطئ في الجانب الأعلى.نظرًا لأنك على الأرجح ستستخدم varchar، فإن أي مساحة إضافية تسمح بها لن تستخدم فعليًا أي مساحة إضافية إلا إذا احتاجها شخص ما.أود أن أقول بالنسبة للأسماء (الأول أو الأخير)، يجب أن تحتوي على 50 حرفًا على الأقل، وبالنسبة لعنوان البريد الإلكتروني، اجعلها 128 حرفًا على الأقل.هناك بعض عناوين البريد الإلكتروني الطويلة حقًا.

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

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

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

كنت أرغب في العثور على نفس الشيء وبدت معايير البيانات الحكومية في المملكة المتحدة المذكورة في الإجابة المقبولة مثالية.ولكن يبدو أن أيًا من هذه العناصر لم يعد موجودًا بعد الآن - وبعد بحث مطول وجدته في الأرشيف هنا: http://webarchive.nationalarchives.gov.uk/+/http://www.cabinetoffice.gov.uk/govtalk/schemasstandards/e-gif/datastandards.aspx.تحتاج إلى تنزيل الملف المضغوط واستخراجه ثم فتح default.htm في مجلد html.

الاسم الأول :35 اسم العائلة:35 البريد الإلكتروني:255 URL:60+ وفقا لخادم ومدينة المتصفح:45 العنوان:90

بمجرد النظر إلى أرشيفات البريد الإلكتروني الخاصة بي، يوجد عدد من الأسماء "الأولى" الطويلة جدًا (وبالطبع فإن المقصود بـ أولاً هو متغير حسب الثقافة).أحد الأمثلة هو كريشنامورثي - الذي يبلغ طوله 13 حرفًا.قد يكون التخمين الجيد من 20 إلى 25 حرفًا بناءً على ذلك.يجب أن يكون البريد الإلكتروني كثيراً منذ فترة أطول، ربما يكون لديك الاسم الأول.lastname@somedomain.com.كما يسمح لك Gmail وبعض برامج البريد الأخرى باستخدام الاسم الأول.lastname+sometag@somedomain.com حيث "sometag" هو أي شيء تريد وضعه هناك بحيث يمكنك استخدامه لفرز رسائل البريد الإلكتروني الواردة.كثيرًا ما أواجه نماذج ويب لا تسمح لي بإدخال عنوان بريدي الإلكتروني بالكامل دون النظر في أي علامات.لذا، إذا كنت بحاجة إلى حقل بريد إلكتروني ثابت، فربما يكون مثل 25.25+15@20.3 حرفًا بإجمالي 90 حرفًا (إذا أجريت حساباتي بشكل صحيح!).

قد تكون هذه مفيدة لشخص ما؛

youtube max channel length = 20
facebook max name length   = 50
twitter max handle length  = 15
email max length           = 255 

http://www.interoadvisory.com/2015/08/6-areas-inside-of-linkedin-with-character-limits/

عادة ما أذهب مع:

الاسم الأول:30 حرفا
اسم العائلة:30 حرفا
بريد إلكتروني:50 حرفا
عنوان:200 حرف

إذا كنت قلقًا بشأن الحقول الطويلة للأسماء، فقد أختار أحيانًا 50 لحقول الأسماء أيضًا، نظرًا لأن مساحة التخزين نادرًا ما تمثل مشكلة هذه الأيام.

إذا كنت بحاجة إلى التفكير في الترجمة (بالنسبة لأولئك منا خارج الولايات المتحدة!) وكان ذلك ممكنًا في بيئتك، فأنا أقترح ما يلي:

تحديد أنواع البيانات لكل مكون من الاسم - ملاحظة:بعض الثقافات لها أكثر من اسمين!ثم اكتب الاسم الكامل ،

ومن ثم يصبح التوطين بسيطًا (فيما يتعلق بالأسماء).

الأمر نفسه ينطبق على العناوين، راجع للشغل - تنسيقات مختلفة!

فمن varchar أليس كذلك؟لذلك لا يهم إذا كنت تستخدم 50 أو 25، فمن الأفضل أن تكون آمنًا وتستخدم 50، وأعتقد أن أطول ما رأيته هو حوالي 19 أو نحو ذلك.الأسماء الأخيرة أطول

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