데이터베이스 테이블을 디자인하고 다시 한 번 같은 멍청한 질문을 합니다. 이름 필드는 얼마나 오래 걸리나요?
누구든지 이름, 성 및 전자 메일 주소와 같이 가장 일반적인 필드에 알맞은 길이의 목록이 있습니까?
답변
W3C의 추천 :
다양한 배경을 가진 사람들의 이름을 받아 들일 양식이나 데이터베이스를 설계하는 경우, 주어진 이름과 가족 이름에 대해 별도의 필드가 필요한지 스스로에게 물어봐야합니다.
… 일부 문화권의 이름은 자신의 이름보다 훨씬 길 수 있습니다. … 데이터베이스 이름의 필드 크기를 제한하지 마십시오 . 특히 UTF-8의 4 문자 일본어 이름이 4 바이트에 해당한다고 가정하지 마십시오. 실제로 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
개인 이름에 대한 긴 분노
개인 이름은 Polynym (여러 정렬 가능한 이름) 구성 요소가 ), Mononym (한 구성 요소가있는 이름) 또는 Pictonym (그림으로 표시되는 이름-Prince와 같은 사람들이 있기 때문에 존재 함)입니다.
한 사람은 여러 이름을 가질 수 있으며 법률, MARITAL, 메이든, 선호, 소피아, PSEUDONYM 등과 같은 역할을 수행 할 수 있습니다. “한 번에 하나의 법적 이름 만 가질 수 있지만 여러 가명과 같은 비즈니스 규칙이있을 수 있습니다. 한 번에 ”
몇 가지 예 :
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 자 이상으로 말하고 싶습니다. 실제로 긴 전자 메일 주소가 있습니다.
내가 좋아하는 또 다른 일은 Lipsum.com에 가서 텍스트를 생성하도록 요청하는 것입니다. 그렇게하면 100 바이트의 모양을 알 수 있습니다.
답변
다른 숫자가 고객에게 특별한 의미를 갖는 인터페이스를 향한 고객과 같은 정당한 이유가없는 한 거의 항상 2의 거듭 제곱을 사용합니다.
2의 거듭 제곱을 고수하면 제한된 크기의 공통 크기로 유지되며, 그 자체로는 좋은 일이며, 발생할 수있는 알 수없는 물체의 크기를 쉽게 추측 할 수 있습니다. 나는이 일을하는 다른 사람들이 상당히 많다는 것을보고, 미적으로 기쁜 일이 있습니다. 일반적으로 이것을 볼 때 좋은 느낌을줍니다. 디자이너가 엔지니어 나 수학자처럼 생각하고 있었음을 의미합니다. 소수만 사용하면 걱정할 것입니다. 🙂
답변
나는 똑같은 것을 찾고 싶었고 수용 된 대답에 언급 된 영국 정부 데이터 표준이 이상적이라고 들었습니다. 그러나 이것들 중 어느 것도 더 이상 존재하지 않는 것 같습니다-확장 검색 후 나는 여기에있는 아카이브에서 찾았습니다 : http://webarchive.nationalarchives.gov.uk/+/http://www.cabinetoffice.gov.uk/govtalk/ schemasstandards / 전자 GIF / datastandards.aspx . 압축 파일을 다운로드하여 압축을 푼 다음 html 폴더에서 default.htm을 열어야합니다.