powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Товары с разными характеристиками
16 сообщений из 66, страница 3 из 3
Товары с разными характеристиками
    #39227561
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mini.weblabКот МатроскинЕще раз - я хочу прописать в базе, что нельзя создать продукт без заполненного свойства "цвет".
В традиционной структуре мне для этого нужен один щелчок мышки. Что мне делать в Вашей структуре?
очевидно, не использовать мою структуру :)
Про что я и говорю - а
mini.weblabзадание ограничения NOT NULL в базе
-не поможет никак.
...
Рейтинг: 0 / 0
Товары с разными характеристиками
    #39227566
mini.weblab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LSVСамое интересное - запрет ввода недопустимых значений. Во где все приколы. :)
а мы уже дошли до самого интересного? просто обсудили возможные структуры.
следующий этап: посмотреть на тз, и принимая во внимание плюсы и минусы возможных подходов, выбрать наиболее подходящий вариант
...
Рейтинг: 0 / 0
Товары с разными характеристиками
    #39227575
mini.weblab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот Матроскин,
замечу, вашего требования не было в начальном ТЗ
а так мои вам поздравления
...
Рейтинг: 0 / 0
Товары с разными характеристиками
    #39227600
tip78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот МатроскинЯ про это и говорю - декларативными ограничениями в базе при EAV этого сделать нельзя.
(и даже программными - непросто)
Мы тут все-таки на PHP обсуждаем :)
это не значит, что надо валидацию формы в SQL тащить ))
...
Рейтинг: 0 / 0
Товары с разными характеристиками
    #39227605
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78Кот МатроскинЯ про это и говорю - декларативными ограничениями в базе при EAV этого сделать нельзя.
(и даже программными - непросто)
Мы тут все-таки на PHP обсуждаем :)
это не значит, что надо валидацию формы в SQL тащить ))

Какую "валидацию формы"? Это целостность данных , и очень хотелось бы, чтобы ограничения этой целостности лежали бы в одном месте - в СУБД.
...
Рейтинг: 0 / 0
Товары с разными характеристиками
    #39227608
SERG1257
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78 что за проблемы то, можете пример привести?Шо опять? Да полфорума здесь ломаются копья. Побойтесь бога воспользуйтесь поиском.
Я могу сделать за вас эту работу, но тогда пропадет воспитательный эффект.
...
Рейтинг: 0 / 0
Товары с разными характеристиками
    #39227827
tip78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SERG1257tip78 что за проблемы то, можете пример привести?Шо опять? Да полфорума здесь ломаются копья. Побойтесь бога воспользуйтесь поиском.
Я могу сделать за вас эту работу, но тогда пропадет воспитательный эффект.
ой, да вы уж так не напрягайтесь, пожалейте себя
возвращайтесь на печь
а мы уж тут как-то сами.
пока что только из пальца высосана потребность непременно тащить сырые данные в БД, чтобы там их проверять...
некрасиво прикрытая некой "целостностью данных", которой там в помине ничего не угрожало.
эта половина программистов может и дальше убиваться обо всё, что ей взбредёт в голову
учитывая, что 95% программистов вовсе не программисты, считаю это нормой )
...
Рейтинг: 0 / 0
Товары с разными характеристиками
    #39227840
SERG1257
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78 тащить сырые данные в БДНе понял вашей сентенции.
tip78 некрасиво прикрытая некой "целостностью данных", которой там в помине ничего не угрожало.вы хотите сказать констрейнты - зло?
tip78 а мы уж тут как-то самиДа уж постарайтесь найдите второй неустранимый недостаток.

Еще раз повторю - с точки зрения разработчика все хорошо.
...
Рейтинг: 0 / 0
Товары с разными характеристиками
    #39227870
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78пока что только из пальца высосана потребность непременно тащить сырые данные в БД, чтобы там их проверять...
некрасиво прикрытая некой "целостностью данных", которой там в помине ничего не угрожало.

Не, это как-то вяловато :)
Вот когда Вы жгли про преимущества EAV в скорости запросов - вот это был да, трэш и угар.
...
Рейтинг: 0 / 0
Товары с разными характеристиками
    #39227882
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Стыдно, господа. Вас из вашей серости пытается вытащить крупный специалист, остальное в его профиле. А вы ещё ерепенитесь. Признайте уж вашу закоснелость и спрячьте тела где-нибудь в утёсах.
...
Рейтинг: 0 / 0
Товары с разными характеристиками
    #39227971
tip78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SERG1257tip78 тащить сырые данные в БДвы хотите сказать констрейнты - зло?
я говорю, что пустышка или нет проверяется на этапе валидации формы
валидация формы это в любом случае процедура обязательная и получается, что своим констрейнтом на NOT NULL вы делаете двойную работу
но это не главное, главное, что в 99% случаев БД вообще не нужно трогать, до тех пор, пока не случится INSERT/UPDATE
(иногда надо конечно проверить, чтобы нужные данные присутствовали в БД, но это другое)
потому что БД это всегда самое узкое место в приложении
вы же предлагаете через дёрганье БД проверять NULL там или NOT NULL
это совершенно непрофессионально, как по мне
когда !== '' или !empty() в PHP не создаёт никакой нагрузки

и когда тут столько разговоров про замену привычной и удобной структуры таблиц, а в итоге причиной является совершенно ненужная проверка в БД на NOT NULL, это, мягко говоря, вызывает недоумение.
...
Рейтинг: 0 / 0
Товары с разными характеристиками
    #39227983
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78SERG1257пропущено...
вы хотите сказать констрейнты - зло?
я говорю, что пустышка или нет проверяется на этапе валидации формы
валидация формы это в любом случае процедура обязательная и получается, что своим констрейнтом на NOT NULL вы делаете двойную работу
но это не главное, главное, что в 99% случаев БД вообще не нужно трогать, до тех пор, пока не случится INSERT/UPDATE
(иногда надо конечно проверить, чтобы нужные данные присутствовали в БД, но это другое)
потому что БД это всегда самое узкое место в приложении

Ерунда, конечно.
При вводе номенклатуры товаров (мы, если что, обсуждаем номенклатуру товаров) БД- самое узкое место? Ха-ха три раза.
Сколько в Вашем интернет-магазине описывается новых товаров в сутки ( через PHP-шные формы, да)? хотя бы 100к есть?
Собственно, повторяется история с IBM-овской статьей про наследование - Вы где-то вычитали фразу "БД это всегда самое узкое место в приложении", но даже не попытались задуматься "А к чему она относится? А в каких случаях она применима?"
...
Рейтинг: 0 / 0
Товары с разными характеристиками
    #39228057
mini.weblab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78,
Основы проектировани БДдля определения перечня и структуры хранимых данных надо собрать информацию о реальных и потенциальных приложениях, а также о пользователях базы данных, а при построении инфологической модели следует заботиться лишь о надежности хранения этих данных, напрочь забывая о приложениях и пользователях, для которых создается база данных
...
Рейтинг: 0 / 0
Товары с разными характеристиками
    #39228268
tip78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот Матроскинtip78пропущено...

я говорю, что пустышка или нет проверяется на этапе валидации формы
валидация формы это в любом случае процедура обязательная и получается, что своим констрейнтом на NOT NULL вы делаете двойную работу
но это не главное, главное, что в 99% случаев БД вообще не нужно трогать, до тех пор, пока не случится INSERT/UPDATE
(иногда надо конечно проверить, чтобы нужные данные присутствовали в БД, но это другое)
потому что БД это всегда самое узкое место в приложении

Ерунда, конечно.
При вводе номенклатуры товаров (мы, если что, обсуждаем номенклатуру товаров) БД- самое узкое место? Ха-ха три раза.
Сколько в Вашем интернет-магазине описывается новых товаров в сутки ( через PHP-шные формы, да)? хотя бы 100к есть?
Собственно, повторяется история с IBM-овской статьей про наследование - Вы где-то вычитали фразу "БД это всегда самое узкое место в приложении", но даже не попытались задуматься "А к чему она относится? А в каких случаях она применима?"

а вы за описанием товаров не прячьтесь, это не поможет ))
если вы проверяете NOT NULL через БД, значит так делаете всегда, потому что вам почему-то в голову не приходит, что данные перед походом в БД должны быть проверены.
Что может случиться ДДоС на любой из этих форм и тогда вы увидите не 100к в день, а в секунду, потому что L7 это самая вкусняшка, её все любят.
Что грамотное программирование должно быть везде, и в особенности там, где вам кажется, что "нагрузки нету и всё обойдётся".
"Фразу я вычитал" у хайлоадеров, которые twitter, pinterest, facebook, muut.com (полностью на REDIS кстати) и прочие.
Но ещё мне "повезло" реально влетать на бизнес-приложениях в простои, которые влекут потери моих уже денег и, что куда дороже, репутации.
Мой опыт, сын ошибок трудных, меня научил каждую мелочь учитывать и ожидать всего, поэтому я просчитываю все случаи.
честно я вообще не понимаю, как кому-то с опытом в голову может придти через базу там что-то проверять, кроме самих данных в этой базе
дикость ^^
...
Рейтинг: 0 / 0
Товары с разными характеристиками
    #39228300
SERG1257
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78 если вы проверяете NOT NULL через БД, значит так делаете всегда, Не мы проверяем, а СУБД проверяет перед записью, и не только NOT NULL, но и любые другие ограничения.
tip78 что данные перед походом в БД должны быть проверены.Да проверяйте конечно, кто вам мешает, это бысто дешево и практично. Просто обычно с одной базой работает более одного приложения.
tip78 "Фразу я вычитал" у хайлоадеров, которые twitter, pinterest, facebook, muut.com (полностью на REDIS кстати) и прочие.Ээ, а ты в своей машине руль на спортивный поменял? И не забудь про выхлопную трубу и клиренс занизить, я формулу один смотрел там все так делают.
tip78 Но ещё мне "повезло" реально влетать на бизнес-приложениях в простои, которые влекут потери моих уже денег и, что куда дороже, репутации.И почему я не удивлен.
tip78 Мой опыт, сын ошибок трудных, меня научил каждую мелочь учитывать и ожидать всего, поэтому я просчитываю все случаи.Давай учти маленькую мелочь - сколько действий должна сделать СУБД чтобы достать строку для EAV и для обычных таблиц.
tip78придти через базу там что-то проверять, кроме самих данных в этой базеКличко завидует твоему красноречию
...
Рейтинг: 0 / 0
Товары с разными характеристиками
    #39228331
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tip78Кот Матроскинпропущено...

Ерунда, конечно.
При вводе номенклатуры товаров (мы, если что, обсуждаем номенклатуру товаров) БД- самое узкое место? Ха-ха три раза.
Сколько в Вашем интернет-магазине описывается новых товаров в сутки ( через PHP-шные формы, да)? хотя бы 100к есть?
Собственно, повторяется история с IBM-овской статьей про наследование - Вы где-то вычитали фразу "БД это всегда самое узкое место в приложении", но даже не попытались задуматься "А к чему она относится? А в каких случаях она применима?"

а вы за описанием товаров не прячьтесь, это не поможет ))
если вы проверяете NOT NULL через БД, значит так делаете всегда, потому что вам почему-то в голову не приходит, что данные перед походом в БД должны быть проверены.
Что может случиться ДДоС на любой из этих форм и тогда вы увидите не 100к в день, а в секунду, потому что L7 это самая вкусняшка, её все любят.
Что грамотное программирование должно быть везде, и в особенности там, где вам кажется, что "нагрузки нету и всё обойдётся".
"Фразу я вычитал" у хайлоадеров, которые twitter, pinterest, facebook, muut.com (полностью на REDIS кстати) и прочие.
Но ещё мне "повезло" реально влетать на бизнес-приложениях в простои, которые влекут потери моих уже денег и, что куда дороже, репутации.
Мой опыт, сын ошибок трудных, меня научил каждую мелочь учитывать и ожидать всего, поэтому я просчитываю все случаи.
честно я вообще не понимаю, как кому-то с опытом в голову может придти через базу там что-то проверять, кроме самих данных в этой базе
дикость ^^

Во, похоже восприняли мой упрек про "вяловато" и снова развернулись :)
Почти каждая фраза - шедевр (что про "в голову не приходит", что про DDoS на админке магазина и борьбу с ним при помощи отсутствия constraint'ов, что про хайлоадеров ), но больше всего мне понравился довод
Мой опыт, сын ошибок трудных, меня научил каждую мелочь учитывать и ожидать всего, поэтому я просчитываю все случаи в защиту тезиса "Да нафиг проверять корректность данных в БД - и так сойдет" :)
...
Рейтинг: 0 / 0
16 сообщений из 66, страница 3 из 3
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Товары с разными характеристиками
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]