1. SQL / Говнокод #1942

    −154.8

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    create table user.profile (
      ...
      gender boolean,
      ...
    )

    Очевидно, true - это мужик :D

    Запостил: Suor, 06 Октября 2009

    Комментарии (67) RSS

    • и чего особенного? Вчём говнокод?
      Ответить
      • Ну, я видел более правильный подход:
        create table user.profile (
        ...
        is_female boolean,
        ...
        )
        Ответить
        • Маловато полов-то...

          Мужской, женский, гермафродит, трансвестит, не определился (is null -- не указан) =] И это только очевидные... А сколько ещё всякого на свете бывает... У...
          (j/k)
          Ответить
          • Очевидо, у автора обсуждаемого кода проблем нет, у него учитывается только определился/не определился (gender true/false)
            Ответить
            • true - мужской, false - женский, null - неизвестно
              Ответить
              • В этот момент вас должны атаковать феминистки. Почему true -- мужской? Что за дискриминация?! Почему мужчины правильные, а женщины нет?
                (j/K)
                Ответить
                • У нас ещё есть таблица с квартирами, где
                  true - газовая плита, false - электрическая :)
                  Ответить
          • видимо пидарам вход хапрещён ))
            Ответить
        • это женский вариант :)
          Ответить
    • Как было бы логичнее?
      gender varchar(1) ?
      Или лучше было бы создать справочников и связать его тут внешним ключом? )))))
      Имхо boolean - вполне нормальное решение
      Ответить
      • А у тебя какой пол - true или false ?
        Ответить
        • Я не в контексте этого приложения.
          Ответить
          • Не фэйли, признавайся, что для твоего пола нужно создавать словарь и привязываться к нему по внешнему ключу
            Ответить
            • Внимательнее читай )))
              Как раз-таки я написал что справочник - это тоже говно.
              Пол имеет два значения "м" и "ж", единственный тип, который также имеет два значения - это boolean. Сходство улавливаешь?
              Ну а по поводу названия колонки, да, его сменить бы хорошо на isMale или isFemale как указано уже было выше.
              Но лишь название, а не тип!
              Ответить
              • > единственный тип, который также имеет два значения - это boolean
                А если бы полов было три? Где тот единственный тип, который имеет три значения?
                Если что-то имеет два значения, то это ещё не значит, что оно boolean. В данном случае это enum из двух элементов (в SQL соответственно справочник или просто int) .
                Ответить
                • Enum -- это, конечно, хорошо. Но... Вероятно, он больше памяти занимает. Например битовые поля в sql server хранятся по восемь штук в одном байте. В MySQL -- популярная СУБД для сайтов всяких -- даёт байт на битовое поле, но на ENUM даёт 2 байта.

                  Самый лихой выход, которым можно ухватиться за все приятные места сразу -- назвать битовое поле is_female. И понятно всё, и места мало занимает, и политкоректно.
                  Ответить
                  • Однако все безаргументно отрицают такой очевидный вариант
                    Ответить
                  • Политкорректнее бы завести одновременно два поля, is_male и is_female, чтобы один пол не выделять никак!
                    Ответить
                    • Я бы предложил поля has_verpa и has_vagina.
                      Ответить
                      • Надо ещё поля про то, кем пациент себя считает и с кем предпочитает взаимодействовать.
                        Ответить
                        • Про кем себя считает не надо. На всякие «AH-64» полей не напасёшься.
                          Ответить
                          • Таблицу можно привязать. С many to many связью.
                            Ответить
                • Ну так их же два :)
                  А просто int конечно намного логичнее использовать )))) ага
                  типа true/false не понятно, а если использовать 0/1 (или 1/2, или 13/14) сразу для всех очевиднее станет.
                  Ответить
        • у меня true, определённо
          Ответить
      • ага очень нормальное. А потом все угадывають ты true или false
        здесь либо не boolean липо колонку нормально назвать
        Ответить
      • gender ENUM('0','1','2', ... 'n')
        Ответить
        • Да, заложить в архитектуру системы встречу с инопланетным разумом. А там полов, как известно, больше 10.
          Ответить
    • показать все, что скрытоboolean для пола - тупое решение, говнокод 100%
      Ответить
    • а помоему вполне себе... Всяких пидорасов и мутантов в газовую камеру...
      Ответить
    • Ещё было тип плиты:
      true - газовая, false - электрическая.
      Электрическая плита - не тру :)
      Не особый говокод, просто забавно
      Ответить
    • самое крутое в этом посте коменты ))
      Suor - зачот

      +10
      Ответить
    • Это студенческая лаба. Сам такие делал когда-то.

      Нужно 0 и 1 - баба и мужик!
      Ответить
    • баян. ещё одна работа ещё одного студента...
      Ответить
    • нах нам пидарасы?

      boolean not null
      Ответить
      • не такой вариант не катит
        лучше enum сделать с полями
        мужик
        баба
        гомофоб
        метрофоб
        )))))
        Ответить
    • Альтернативщиков в NULL, нефиг базу засорять
      Ответить
    • Я за БУЛЛ. IsMale. Код - говнокод
      Ответить
    • По стандарту ИСО полов 4. Чтобы это у них не значило.
      Ответить
      • Да, нет, мужчина и женщина?
        Или sex — 4 раза в неделю максимум?
        Ответить
      • Но в исо (ISO 5218) единичка всё же за мужиком! )
        Ответить
    • показать все, что скрытоvanished
      Ответить
    • Боянище
      Ответить
    • Петухи переворачивают отлежавшееся говно, проверяют, не получился ли компост для фазенды.
      Ответить
    • Просто оставлю это здесь:
      http://lovas.ru/gender
      Ответить

    Добавить комментарий