LINUX.ORG.RU
ФорумTalks

[ЫНТЫРПРАЙЗ][ЛЮБОВЬ][ОБОЖАНИЕ]Гениально!


0

1

собственно дали задание кое что поправить в статистике. полез курить доку по БД и наткнулся на следующее.

Field descriptions

The field descriptions for this view are described in this section.

AbdDelay2, AbdDelay4, AbdDelay6,... AbdDelay60
AbdDelay70, AbdDelay80, AbdDelay90,... AbdDelay300
AbdDelay360, AbdDelay420, AbdDelay480, AbdDelay540, AbdDelay600
AbdDelayBeyond

...

AnsDelay2, AnsDelay4, AnsDelay6,... AnsDelay60
AnsDelay70, AnsDelay80, AnsDelay90,... AnsDelay300
AnsDelay360, AnsDelay420, AnsDelay480, AnsDelay540, AnsDelay600
AnsDelayBeyond

вот думаю начинать писать генератор запросов или отложить до вторника.

Ответ на: комментарий от zloy_buratino

> Что это такое?

это таблица в БД, состоящая из полей типа AnsDelay480, AnsDelay540, AnsDelay600 и не имеющая описания того, что это значит.

name_no ★★
()
Ответ на: комментарий от zloy_buratino

>>Что это такое?

табличка в которую агрегируется статистика по приложениям телефонии.

exception13 ★★★★★
() автор топика
Ответ на: комментарий от name_no

>>это таблица в БД, состоящая из полей типа AnsDelay480, AnsDelay540, AnsDelay600 и не имеющая описания того, что это значит.

описание то как раз есть. это значит кол-во вызовов отбитых/принятых в пределах 2, 4, 6,... 600 секунд.

exception13 ★★★★★
() автор топика

> доку по БД

да тем еще и дока по БД есть! совсем зажрались, буржуи!

... напиши генератор тру-ынтерпрайзной документации, который по базе данных генерит для нее доку :)

stevejobs ★★★★☆
()
Ответ на: комментарий от exception13

> это значит кол-во вызовов отбитых/принятых в пределах 2, 4, 6,... 600 секунд.

О_о ты зря об этом в топике не написал, это ещё круче, чем без описания.

name_no ★★
()

Да. Круто. Мне не так давно попалась БД несравнимо более скромная, там у каждой новости было только (кроме прочих) двадцать полей picture1, pictrure2, ... picture20 :)

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

БД несравнимо более скромная, там у каждой новости было только (кроме прочих) двадцать полей picture1, pictrure2, ... picture20 :)

интересно, откуда берутся такие решения? Лютая оптимизация?

stevejobs ★★★★☆
()
Ответ на: комментарий от name_no

>больше двадцати картинок в новости — это моветон

Ну да, видимо :)

KRoN73 ★★★★★
()
Ответ на: комментарий от stevejobs

> интересно, откуда берутся такие решения? Лютая оптимизация?

HIG, например, такому способствует. Если HIG сказал, что больше двадцати картинок нельзя, то и нечего париться.

name_no ★★
()
Ответ на: комментарий от stevejobs

>интересно, откуда берутся такие решения? Лютая оптимизация?

Могу сказать, откуда берутся варианты с image1_id, image2_id, image3_id.

На http://www.aviaport.ru/job/ в ТЗ было добавление в анкету с вакансией одного фото. Соответственно, делается поле image_id.

Когда уже всё было готово, пришла в голову руководства светлая мысль, что фотографий может быть три.

Добавить ещё два фото - это две строчки в шаблоне (копипастом) и 2-3 строчки в коде. Ну и плюс несколько тычков мышью в phpMyAdmin. Так и было сделано.

Был вариант ещё задействовать уже имеющуюся систему связей объектов, но там надо бы было конвертировать уже имеющиеся записи в БД + переписывать строчку в шаблоне + уже не 2-3 строки в коде, а штук пять. Плюс отдельное тестирование. Вместо 5 минут работы - 20.

Вариант с заведением отдельной таблицы анкета — фото даже не рассматривался, это ж на пол-часа работы! :)

...

Хотя, если (гипотетически) дойдут руки, нечем будет заняться - то перепишу. Ну, или ещё пару фоток шеф захочет добавить :D

...

А вот в упомянутом варианте с 20-ю картинками - там я сразу делал всё на механизме перекрёстных связей :)

KRoN73 ★★★★★
()
Ответ на: комментарий от name_no

>Если HIG сказал, что больше двадцати картинок нельзя, то и нечего париться.

Не-не-не. Обработать 20 картинок таким образом в коде будет в 5 раз больше, чем обработать их как-то унифицированно :)

KRoN73 ★★★★★
()
Ответ на: комментарий от name_no

Я тут про администрирование говорю :) Форму-то ещё набить в цикле не проблема. А вот принимать значения? В цикле проверять все входные параметры GET по регекспу? Делать 20 копипастов с вызовом функции? Что так, что эдак - некрасиво :)

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

А вот принимать значения? В цикле проверять все входные параметры GET по регекспу? Делать 20 копипастов с вызовом функции?

любители религиозного фанатизма должны вставить в этот тред, что нужно изобрести специальный HIG, в котором имена переменных в запросе должны иметь сакральные значения, которые немедленно ведут к какому-то эффекту в обход мнения сайтописателя. Например, если в запросе вруг появится параметр "?image=NN", то само собой разумеется, это операция вставки в БД. Всё это должно поддерживаться православным фреймворком, а сайтописатель быть если не православным, то хотя бы с высокой степенью посвящения в Сакральное.

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

> любители религиозного фанатизма должны вставить в этот тред, что нужно изобрести специальный HIG

ты хренов извращенец. Всё гораздо проще: в форме создания новости есть не больше двадцати полей для картинки, которые обрабатывается в цикле:

for (1..20) {
    if (defined($_POST[$_])) {
        $sth->bind("image$_", $_POST[$_]);
    } else {
        last;
    }
}

хотя наплести двадцать хигов, по одному на каждую картинку, — это тоже весело.

name_no ★★
()
Ответ на: комментарий от name_no

кстати, если сделать 20 именованной константой, то можно относительно легко расширять новости до большего количества снимков :-D

name_no ★★
()
Ответ на: комментарий от name_no

> кстати, если сделать 20 именованной константой, то можно относительно легко расширять новости до большего количества снимков :-D

вот и ты начал создавать еще один хиг. Следующая идея: именованную константу надо писать туда же в запрос, с каким-нибудь сакральным именем, типа ?limit_max_mages

stevejobs ★★★★☆
()
Ответ на: комментарий от KRoN73

Каким боком?

например:

параметры - хэш где key - имя параметра, value - значение параметра;

функция text_обработать (модель, данные);

функция image_обработать (модель, данные);

функция other_обработать (модель, данные);

обработчики {
  text -> text_обработать,
  image -> image_обработать,
  other -> other_обработать
}

функция обработать(параметры)
  создать модель

  для каждого элемента из параметры
    выполнить обработчики[тип параметра(параметр)](модель, параметр)

  сохранить модель

ну или что то в этом духе

exception13 ★★★★★
() автор топика
Ответ на: комментарий от stevejobs

> ?limit_max_mages

чтобы пользователь сам определял, сколько в этот раз максимально допустимо картинок в новости? А если он укажет меньше, чем в прошлый раз — удалять лишние поля из базы? Мне нравится )))

name_no ★★
()

Мне тоже такое попадалось

KODGR_MONTH_ID NUMBER(15) not null,
  KODGR_TYPE_ID  NUMBER(15) not null,
  CHASOBDEN      NUMBER(15,2),
  KBOCHASOB1     VARCHAR2(10) default 0,
  KBOCHASOB2     VARCHAR2(10) default 0,
  KBOCHASOB3     VARCHAR2(10) default 0,
  KBOCHASOB4     VARCHAR2(10) default 0,
  KBOCHASOB5     VARCHAR2(10) default 0,
  KBOCHASOB6     VARCHAR2(10) default 0,
  KBOCHASOB7     VARCHAR2(10) default 0,
  KBOCHASOB10    VARCHAR2(10) default 0,
  KBOCHASOB11    VARCHAR2(10) default 0,
  KBOCHASOB12    VARCHAR2(10) default 0,
  KBOCHASOB13    VARCHAR2(10) default 0,
  KBOCHASOB14    VARCHAR2(10) default 0,
  KBOCHASOB15    VARCHAR2(10) default 0,
  KBOCHASOB16    VARCHAR2(10) default 0,
  KBOCHASOB17    VARCHAR2(10) default 0,
  KBOCHASOB18    VARCHAR2(10) default 0,
  KBOCHASOB19    VARCHAR2(10) default 0,
  KBOCHASOB20    VARCHAR2(10) default 0,
  KBOCHASOB21    VARCHAR2(10) default 0,
  KBOCHASOB22    VARCHAR2(10) default 0,
  KBOCHASOB23    VARCHAR2(10) default 0,
  KBOCHASOB24    VARCHAR2(10) default 0,
  KBOCHASOB25    VARCHAR2(10) default 0,
  KBOCHASOB26    VARCHAR2(10) default 0,
  KBOCHASOB27    VARCHAR2(10) default 0,
  KBOCHASOB28    VARCHAR2(10) default 0,
  KBOCHASOB29    VARCHAR2(10) default 0,
  KBOCHASOB30    VARCHAR2(10) default 0,
  KBOCHASOB31    VARCHAR2(10) default 0,
  MONTH_ID       NUMBER(15) default 0,
  KBOCHASOB8     VARCHAR2(10) default 0,
  KBOCHASOB9     VARCHAR2(10) default 0
BeerSeller ★★★★
()
Ответ на: комментарий от exception13

>ЗОМГ. еще и транслит!

В одном проекте, к которому я подключался, в Оракле было поле VAZNONEWS. Ну и я продублировал, недолго думая у себя его как vaz_no_news. Ну, фиг его знает, что там, может, это сленг такой от was_no_news :)

И только много позже, когда подцеплял админку, мне рассказали, что это VAZNO_NEWS. Т.е. ВАЖНО :)

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

а у нас в комментариях было классная аннотация:

//hueraga!

обозначающая важные, либо сомнительные и неоднозначные части кода.

как думаешь, это таки транслит, или какой-технический термин?

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

А ведь как точно слово подобрали, никому не известно, но смысл комента сразу ясен без лишних пояснений.

cvb
()

Это история про безумного русского, который придумал Формулу?

sin_a ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.