вторник, 28 февраля 2017 г.

Сколько места в БД выделить названию организации?

Вот у вас есть сайт, на котором могут зарегистрироваться компании. При создании базы сколько места дадите под название организации?

name  NVARCHAR2(100)
name  NVARCHAR2(300)
name  NVARCHAR2(500)

Что привлекательнее? А разумнее? Правильно — ничего Smile :)
Рано или поздно вы огребете что-то типа too large for field 'name' (actual: 340, maximum: 300). 

Потому что в ФНС на название организации ограничений вообще нет. И правильно будет сделать блоб, чтобы уж наверняка. Но если сильно хочется варчар, то хотя бы на 1000 символов.

Пример для теста из реальной жизни — 876 символов (ИНН 5406649116, проверьте на https://egrul.nalog.ru/):

ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ СИБИРСКИЕ ТРАДИЦИИ В КОМПЛЕКСНОМ ПРАВОВОМ (ЮРИДИЧЕСКОМ) ОБЕСПЕЧЕНИИ ГРАЖДАН И ЮРИДИЧЕСКИХ ЛИЦ ВСЕХ ГРАЖДАНСКО-ПРАВОВЫХ ФОРМ И ВСЕХ СФЕР ХОЗЯЙСТВЕННОЙ ДЕЯТЕЛЬНОСТИ НА ТЕРРИТОРИИ Г. НОВОСИБИРСКА, НОВОСИБИРСКОЙ ОБЛАСТИ В ЦЕЛОМ, В ТОМ ЧИСЛЕ СУДЕБНОЕ И ДОСУДЕБНОЕ СОПРОВОЖДЕНИЕ ИНТЕРЕСОВ КЛИЕНТА, А ИМЕННО: ПРЕДОСТАВЛЕНИЕ ПИСЬМЕННЫХ ИЛИ УСТНЫХ КОНСУЛЬТАЦИЙ И ЗАКЛЮЧЕНИЙ ПО ПРАВОВЫМ ВОПРОСАМ В СФЕРЕ БИЗНЕСА (ПРАВОВОЙ АУДИТ); СОСТАВЛЕНИЕ ДОКУМЕНТОВ ПРАВОВОГО ХАРАКТЕРА (ЗАЯВЛЕНИЯ, ЖАЛОБЫ И Т.П.), В ТОМ ЧИСЛЕ ПРОЕКТОВ ГРАЖДАНСКО-ПРАВОВЫХ И ИНЫХ ДОГОВОРОВ; ОСУЩЕСТВЛЕНИЕ ЭКСПЕРТИЗЫ ПРЕДСТАВЛЕННЫХ ЮРИДИЧЕСКИХ ДОКУМЕНТОВ НА ПРЕДМЕТ ИХ СООТВЕТСТВИЯ ИНТЕРЕСАМ КЛИЕНТА И ПОЛОЖЕНИЯМ ДЕЙСТВУЮЩЕГО ЗАКОНОДАТЕЛЬСТВА; ОКАЗАНИЕ ПРАВОВОЙ ПОМОЩИ ПРИ ПРОВЕДЕНИИ ПЕРЕГОВОРОВ; ПРЕДСТАВЛЕНИЕ ИНТЕРЕСОВ КЛИЕНТА В АДМИНИСТРАТИВНЫХ И ИНЫХ ОРГАНАХ (УЧРЕЖДЕНИЯХ);



Если у вас есть поиск по названию — проверьте, что будет, если имя длинное (вон как ФНС его отображает, в такой дли-и-и-и-и-и-и-инный столбик).

Если название выводится в личном кабинете — проверьте, не обрезается ли оно там?

Если название светится еще где-то в системе, всегда полезное проверить, что будет, если оно длинное? Влезет ли? 

4 комментария:

  1. >>name NVARCHAR2(100)

    Вопрос в другом, а зачем тут NVARCHAR2?

    >>Что привлекательнее? А разумнее? Правильно — ничего Smile :)
    1024
    Где то на просторах инета видел статистику по распределению длинны названий организаций. Пик там был в районе 100 символов.

    >>И правильно будет сделать блоб, чтобы уж наверняка.
    Неа :) Потому как организация с длинной названия в 32к символов, это уже интересно :)

    ОтветитьУдалить
    Ответы
    1. «Где-то на просторах интернета» звучит немного неубедительно =) Я даю ссылку на налоговую, это реально существующая компания, в которой ну никак не 100 символов.

      И если вы считаете, что можете обрезать имена или не отображать их — то ок. Но если это недопустимо. то 100 символов будет маловато, потому что их и более 300 штук 10 точно наберется, хотя наверняка больше)

      Удалить
    2. Мы используем varchar2(1024) потому что 512 не хватило :)

      Удалить