Pregunta

Estoy diseñando una tabla de base de datos y una vez de nuevo a hacerme la misma pregunta estúpida: ¿Cuánto tiempo debe el campo firstname ser?

¿Alguien tiene una lista razonable de las longitudes de los campos más comunes, tales como nombre, apellido y dirección de correo electrónico?

¿Fue útil?

Solución

Recomendación del W3C:

Si el diseño de un formulario o de la base de datos que se acepta nombres de personas con una gran variedad de fondos, usted debe pregúntese si usted realmente necesita tener separados los campos de nombre y apellido.

... Tener en cuenta que los nombres en algunas culturas puede ser mucho más de su propio.... No limitar el tamaño del campo para los nombres en su la base de datos.En particular, no se supone que una de cuatro caracteres Nombre japonés en UTF-8, caben en cuatro bytes – es probable que en realidad, la necesidad 12.

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

Para campos de base de datos, VARCHAR(255) es una fuerte opción por defecto, a menos que en realidad se puede venir para arriba con una buena razón para utilizar algo más.Típico de las aplicaciones web, el rendimiento no será un problema.No optimizar prematuramente.

Otros consejos

Acabo de consultar mi base de datos con millones de clientes en los estados UNIDOS.

  • El máximo primer nombre la longitud fue de 46.Yo voy con 50.(Por supuesto, a solo 500 de aquellos que fueron más de 25 años, y estaban todos los casos en que los datos de las importaciones se tradujo en un exceso de basura de la liquidación en ese campo.)

  • Apellido fue similar al del primer nombre.

  • Las direcciones de correo electrónico al máximo a los 62 los caracteres.La mayoría de los más queridos fueron en realidad listas de correo electrónico direcciones de correo separadas por punto y coma.

  • Dirección de la calle maximiza a 95 los caracteres.La larga fueron los de todos válido.

  • Max ciudad longitud era de 35.

Esto debería ser una buena estadística de propagación para las personas en los estados unidos.Si usted tiene la localización, los números podrían variar significativamente.

El Gobierno del reino unido de Datos de Catálogo de Normas detalles el reino unido las normas para este tipo de cosas.Se sugiere a los 35 caracteres para cada Nombre y en Nombre de la Familia, o 70 caracteres para un único campo que guarda el Nombre Completo, y 255 caracteres para una dirección de correo electrónico.Entre otras cosas..

Algunos probablemente correcta longitudes de columna

                            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

Una larga perorata sobre los nombres personales

Un nombre propio es un Polynym (un nombre con varios sortable los componentes), un Mononym (un nombre con sólo uno de los componentes), o un Pictonym (un nombre representada por una imagen - esto existe gracias a personas como Prince).

Una persona puede tener varios nombres, roles de juego, tales como LEGAL, estado CIVIL, SOLTERA, PREFERIDO, APODO, SEUDÓNIMO, etc.Usted podría tener reglas de negocio, tales como "una persona sólo puede tener un nombre legal en un momento, pero varios seudónimos en un momento".

Algunos ejemplos:

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"
  }
]

o

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"
  }
]

o

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"
  }
]

o

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 */
  }
]

Dado nombres, medio nombres, apellidos pueden ser varias palabras tales como "Billy Bob" Thornton, o Ralph "Vaughn Williams".

Yo diría que errar en el lado de alta.Puesto que usted probablemente va a ser el uso de tipo varchar, cualquier espacio extra que permiten que en realidad no utilice todo el espacio extra a menos que alguien lo necesita.Yo diría que para los nombres (la primera o la última), ir por lo menos 50 caracteres, y para la dirección de correo electrónico, al menos 128.Hay algunos muy largo direcciones de correo electrónico por ahí.

Otra cosa que me gusta hacer es ir a Lipsum.com y pedir a generar algo de texto.De esa manera usted puede obtener una buena idea de lo que 100 bytes parece.

Yo casi siempre uso una potencia de 2 a menos que haya una buena razón para no hacerlo, tales como orientación al cliente interfaz donde algún otro número tiene un significado especial para el cliente.

Si nos atenemos a las potencias de 2 que lo mantiene dentro de un conjunto limitado de tamaños comunes, que en sí es una buena cosa, y hace que sea más fácil adivinar el tamaño de los objetos desconocidos que pueden surgir.Veo un buen número de otras personas que están haciendo esto, y no es algo estéticamente agradable sobre él.Generalmente me da una buena sensación cuando veo esto, significa que el diseñador estaba pensando como un ingeniero o matemático.Aunque yo probablemente estaría preocupado si sólo números primos fueron utilizados.:)

Yo quería encontrar la misma y el Gobierno del reino unido de Datos Estándares mencionados en el aceptado respuesta fue ideal.Sin embargo, ninguno de estos parecía existir alguna más - después de una larga búsqueda encontré en un archivo aquí: http://webarchive.nationalarchives.gov.uk/+/http://www.cabinetoffice.gov.uk/govtalk/schemasstandards/e-gif/datastandards.aspx.Necesita descargar el zip, extraer y, a continuación, abra default.htm en la carpeta html.

firstname :35 lastname :35 correo electrónico :255 url :60+ según el servidor y el navegador ciudad :45 dirección :90

Sólo mirando a pesar de que mis archivos de correo electrónico, hay un número bastante largo "primero" de los nombres (por supuesto, lo que se entiende por el primero es variable según la cultura).Un ejemplo es Krishnamurthy - que es de 13 letras.Una buena conjetura podría ser de 20 a 25 cartas basadas en esta.Correo electrónico debe ser mucho más, ya que se puede tener firstname.lastname@somedomain.com.También, gmail y algunos otros programas de correo electrónico permiten utilizar firstname.lastname+sometag@somedomain.com donde "sometag" es cualquier cosa que usted quiere poner allí, así que usted puede utilizar para ordenar los correos electrónicos entrantes.Yo con frecuencia se ejecuta en los formularios web que no me permiten poner en mi dirección de correo electrónico completa sin considerar las etiquetas.Por lo tanto, si usted necesita un fijo de campo de correo electrónico o tal vez algo como 25.25+15@20.3 en caracteres para un total de 90 caracteres (si yo hice mis cuentas, a la derecha!).

Estos podrían ser de utilidad para alguien;

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/

Normalmente voy con:

Nombre:30 caracteres
Apellido:30 caracteres
Correo electrónico:50 caracteres
Dirección:200 caracteres

Si me preocupa mucho los campos para el nombre, yo a veces puede pasar con 50 para los campos de nombre demasiado, ya que el espacio de almacenamiento es rara vez un problema en estos días.

Si usted necesita considerar la localización (para aquellos de nosotros fuera de los estados unidos!) y es posible que en tu entorno, te sugiero:

Definir tipos de datos para cada componente del nombre de la NOTA:algunas culturas tienen más de dos nombres!A continuación, tiene un escriba el nombre completo,

A continuación, la localización se convierte en simple (en lo que a nombres se refiere).

Lo mismo se aplica a las direcciones, por CIERTO - diferentes formatos!

es de tipo varchar derecho?Por lo que entonces no importa si usted utiliza 50 o 25, mejor estar seguro y el uso de 50 años, que dijo: yo creo que el tiempo más largo que he visto es de unos 19 o así.Los últimos nombres son más largos

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top