사용자 "이름" 필드의 적절한 길이 제한은 얼마입니까?
인증되지 않은 사용자가 이름을 포함한 정보를 입력할 수 있는 간단한 웹 양식이 있습니다.하도록 이름 했습니다. 는 " " " " " " " " " " " " 입니다.varchar(50)
하지만 그때부터 궁금해지기 시작했습니다.
그런 것을 사용하는 것이 더 적절한가요?Text
열 유형 또는 이름의 길이를 합리적인 것으로 제한해야 합니까?
저는 당신의 답변에 중요한 경우를 대비하여 SQL Server 2005를 사용하고 있습니다.
편집: 유사한 문제에 대한 광범위한 질문을 보지 못했습니다.
영국 정부 데이터 표준 카탈로그는 주어진 이름과 성에 대해 각각 35자 또는 전체 이름을 포함하는 단일 필드에 대해 70자를 제안합니다.
제가 이 문제에 늦었다는 것을 알지만, 다른 사람들이 나중에 비슷한 질문을 가지고 여기에 올 수도 있기 때문에 어쨌든 이 의견을 추가하겠습니다.
로케일에 따라 열 크기를 조정하지 않도록 주의하십시오.우선, 사람들이 마이그레이션하고 이름을 가져간다는 사실은 제쳐두고 유지보수 악몽을 꾸게 됩니다.
예를 들어, 이러한 성을 가진 스페인 사람들은 영어권 국가로 이주하여 살 수 있으며, 그들의 전체 이름이 사용되기를 합리적으로 기대할 수 있습니다.러시아인들은 그들의 성 이외에도 후원자들의 이름을 가지고 있는데, 몇몇 아프리카 이름들은 대부분의 유럽 이름들보다 상당히 길 수 있습니다.
잠재적인 행 수를 고려하여 각 열을 합리적으로 최대한 넓게 만듭니다.저는 이름, 다른 주어진 이름, 성에 각각 40자를 사용하고 있으며 문제를 발견한 적이 없습니다.
저는 보통 varchar(255)(MySQL에서 varchar 유형의 최대 길이는 255)와 함께 갑니다.
영국에는 대다수 영국 국민을 성공적으로 다루는 몇 가지 정부 표준이 있습니다. 여권 사무소, 운전면허국, 증서 조사국, 그리고 NHS입니다.그들은 분명히 다른 기준을 사용합니다.
증서 투표를 통해 이름을 변경하면 300자를 사용할 수 있습니다.
이름의 길이에 대한 법적 제한은 없지만 전체 이름에 대해 300자(공백 포함)로 제한을 두고 있습니다.
이름(PATEAN NAME)
max an70식/: max an70
여권 사무소는 처음/마지막으로 30+30을 허용하며, 운전면허증(DVLA)은 총 30개입니다.
다른 조직에서는 자신이 작성한 문서에 표시할 내용에 대해 자체적으로 제한이 있습니다. HM Passport Office의 경우 이름과 성이 각각 30자이고 DVLA의 경우 전체 이름이 30자입니다.
한 필드에 전체 이름이 있으면 보통 128 - 64/64를 사용하여 처음과 마지막으로 구분된 필드를 사용합니다. 여러분은 전혀 알지 못합니다.
@이언 넬슨:저는 다른 사람들이 거기서 문제를 보는지 궁금합니다.
분할 필드가 있다고 가정합니다.이름은 35자, 성은 35자로 총 70자입니다.그러나 필드가 하나인 경우 이름과 성을 구분하는 공백을 무시하고 1자씩 짧게 변경합니다.물론, "단 한 글자"이지만, 그것은 누군가가 자신의 전체 이름을 입력하는 것과 그렇지 않은 것 사이에 차이를 만들 수 있습니다.따라서, 저는 그 제안을 "지정된 이름과 성에 대해 각각 35자 또는 전체 이름을 보유할 단일 필드에 대해 71자"로 변경할 것입니다.
이름을 저장하는 데 사용되는 데이터베이스 필드와 HTML 양식의 필드에 대해 답변이 다를 수 있습니다.
HTML로 파일된 이름의 길이는 UX에 의해 안내될 수 있습니다.
유럽에서 "중간값은 이름의 경우 6.5자, 성의 경우 7.1자였다"는 연구 결과가 있습니다.아래 차트를 보시면 이름과 성이 주어진 각 10개의 문자가 최적의 UX를 갖기에 충분하다는 것을 알 수 있습니다.
또한 정부 데이터베이스는 명백한 이유로 이름을 줄일 수 없습니다.아마 할 수 있을 겁니다.추가 스토리지를 구입할 수 있습니다.아마 아닐 겁니다.
50개 사용합니다.
당신이 정말로 묻는 것은 관련이 있지만 상당히 다른 질문입니다. 데이터베이스에 이름을 맞추기 위해 이름을 얼마나 자주 잘라야 합니까?정답은 선택한 최대 길이뿐만 아니라 서로 다른 길이의 이름 빈도에 따라 달라집니다.이러한 우려는 데이터베이스에서 사용되는 리소스에 대한 우려와 균형을 이룹니다.바하르 필드에 대한 서로 다른 최대 길이 간의 오버헤드 차이가 얼마나 적은지를 고려할 때, 저는 일반적으로 이름을 잘라내고 필드를 제가 감히 할 수 있는 만큼 크게 만들도록 강요받지 않는 쪽에서 실수를 저지를 것입니다.
많은 문화권에는 종종 성으로 불리는 '제2의 성'이 있다는 것에 주목하세요.예를 들어, 만약 여러분이 스페인 사람들을 상대하고 있다면, 그들은 '성'과 분리된 성을 갖는 것에 감사할 것입니다.
가장 좋은 방법은 이름 구성 요소에 대한 데이터 유형을 정의하고 성에 대한 데이터 유형을 사용하고 로케일에 따라 조정하는 것입니다.
평균적인 이름은 약 6글자입니다.성이 43개 남았어요.:) 당신이 원한다면 아마도 그것을 줄일 수 있을 겁니다.
가장 중요한 문제는 당신이 얼마나 많은 줄을 가질 것 같습니까?당신이 수백만 줄을 얻을 때까지 바르샤르(50)가 당신을 죽일 것이라고 생각하지 않습니다.
데이터베이스를 사용할 사용자에 따라, 예를 들어 아프리카 이름은 성과 이름이 구분된 varchar(20)로 수행됩니다.그러나 국가마다 다르지만 데이터베이스 리소스와 메모리를 절약하기 위해 성과 이름 필드를 구분하고 varchar(30)를 사용하면 효과가 있을 것이라고 생각합니다.
언급URL : https://stackoverflow.com/questions/30485/what-is-a-reasonable-length-limit-on-person-name-fields
'programing' 카테고리의 다른 글
SQL Server에서 데이터베이스의 테이블에 읽기 및 쓰기 액세스 권한을 부여하는 T-SQL이란 무엇입니까? (0) | 2023.07.15 |
---|---|
Capybara에서 확인란을 어떻게 확인합니까? (0) | 2023.07.15 |
Visual Studio Code Intelliense가 매우 느립니다. 제가 할 수 있는 일이 있습니까? (0) | 2023.07.15 |
루트를 집계하기 위해 리포지토리 축소 (0) | 2023.07.15 |
세션과 HttpContext 간의 차이입니다.현재의.세션 (0) | 2023.07.15 |