powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
25 сообщений из 218, страница 2 из 9
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628344
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryGskyANA, это и была часть размышлений. (я в курсе про клиентские, серверные проверки данных и назначение каждой из них. Опыт есть)

Пишу код уровня "доступа к даным", При повторном прогоне кода создания юзера вылезла ожидаемая ошибка уникальности логина. Тут и появилась мысль использовать это для уменьшения кода валидаторов - не делать некоторые и вылавливать для этого ошибки БД.

Судя по ярким ответам, я или потоптался по мозолям или несу ересь ) ещё раз спасибо за ответы.
Если не секрет, что Вам помешало сразу обрисовать полную картину?

Размышления - это не ересь, просто со стороны выглядит как очередной нуб не осилил валидацию.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628416
alex55555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttЛень программиста, это золотая жила в его профессионализме. Программист должен быть достаточно ленив, чтобы избавить себя от монотонного копипаста
И как только избавил - тут же снова включать лень по полной. Вот так вот и "не выходит каменный цветок" у некоторых "мастеров".

И да, тупость в виде неумения увидеть возможность вынести повторяющийся код в отдельный модуль, не есть лень. Это именно ТУПОСТЬ.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628439
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex55555И да, тупость в виде неумения увидеть возможность вынести повторяющийся код в отдельный модуль, не есть лень. Это именно ТУПОСТЬ.

Речь не обязательно про модуль, а вообще способ написания кода наименьшими усилиями. Физическими я имею в виду. Про умственные усилия я ничего не говорю. Но на то и профессия хорошо оплачиваемая, за умение думать и пользоваться головой. Если человек ленится именно думать, то и стоить его работа будет соответственно, 3 копейки.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628790
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndryGПишу код уровня "доступа к даным", При повторном прогоне кода создания юзера вылезла ожидаемая ошибка уникальности логина. Тут и появилась мысль использовать это для уменьшения кода валидаторов - не делать некоторые и вылавливать для этого ошибки БД.

все верно, проверка уникальности/ссылочной целостности и должны производится только на уровне БД т.к. на клиенте такие проверки бессмысленны и вредны, валидация бизнес-логики включает в себя по-сути 3 шага
а) На клиенте для удобства пользователя (формат email'a, длина строки итд)
б) Дубликат всех этих проверок на аппсервере плюс дополнительная валидация общих бизнес-правил (лимит не превышен, безопасность итд)
в) Дубликат части либо всех этих правил в БД (формат email'a, длина строки, лимиты) плюс ограничения уникальности/ссылочной целостности.

Ошибки уникальности/ссылочной целостности идущие из БД отлавливаются и выводятся соответствующие сообщения юзеру, остальные ошибки логируются для последующего изучения
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628795
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordОшибки уникальности/ссылочной целостности идущие из БД отлавливаются и выводятся соответствующие сообщения юзеру, остальные ошибки логируются для последующего изучения

Пожалуйста, не слушайте вот такой бред говнокодеров.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628796
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordвсе верно, проверка уникальности/ссылочной целостности и должны производится только на уровне БД т.к. на клиенте такие проверки бессмысленны и вредны

Нет не верно, ни разу. Не вводите людей в заблуждение.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628797
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttНет не верно, ни разу. Не вводите людей в заблуждение.
в заблуждение вводишь здесь только ты, да еще и как обычно в очень наглой и оскорбительной форме, проверки уникальности должны быть только в БД т.к. только БД в состоянии обеспечить транзакционную целостность операции, твой вариант можешь даже не предлагать, я знаю что там будет метод репозитория FindUserByLogin() на основании которого принимается решение об уникальности С подобным подходом ты в серьезную компанию даже собеседование не пройдешь, если там конечно тимлид не такой-же...
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628798
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordв заблуждение вводишь здесь только ты, да еще и как обычно в очень наглой и оскорбительной форме, проверки уникальности должны быть только в БД т.к. только БД в состоянии обеспечить транзакционную целостность операции, твой вариант можешь даже не предлагать, я знаю что там будет метод репозитория FindUserByLogin() на основании которого принимается решение об уникальности С подобным подходом ты в серьезную компанию даже собеседование не пройдешь, если там конечно тимлид не такой-же...

Я так понимаю просьбы не декларировать непрофессиональный бред до тебя не доходят.
Тебе ничего не предлагаю, говнокодишь себе и говнокодь дальше, мне на это наплевать с высокой колокольни.

Людям не надо свою чушь в уши заливать, да?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628799
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тебя забанить надо козленок, за оскорбления и весь тот бред, который ты несешь на проффорумах людям, которые просят профессионального совета
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628800
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordС подобным подходом ты в серьезную компанию даже собеседование не пройдешь, если там конечно тимлид не такой-же...

Угу, с проверками уникальности «только в БД», я даже не знаю какая «серьёзная» компания тебе даст хотя бы шанс исправиться и научиться делать по-людски.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628801
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordтебя забанить надо козленок, за оскорбления и весь тот бред, который ты несешь на проффорумах людям, которые просят профессионального совета

О, ну понеслось говно по трубам. Чего собственно и следовало ожидать.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628802
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
комментировать твои пьяные бредни я не буду, почитай хотя-бы википедию про то, как работает база данных, тебя уже столько раз тыкали мордой в твои ламерские советы и ловили на незнании базовых вещей на множестве форумов и топиков, что в очередной мараться не хочется
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628803
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordкомментировать твои пьяные бредни я не буду, почитай хотя-бы википедию про то, как работает база данных, тебя уже столько раз тыкали мордой в твои ламерские советы и ловили на незнании базовых вещей на множестве форумов и топиков, что в очередной мараться не хочется

Какая же у тебя богатая фантазия. Ну так сколько раз меня «тыкали мордой», балабол ты наш?
Человека без грамма знаний видно сразу за версту, вместо аргументов какие-то бредовые фантазии, наглое враньё. Я ведь тебя вообще-то не оскорблял, но с такими как ты надо только матом слать на 3 буквы?

Ты либо аргументы приводишь, либо шёл бы ты лесом рёбенок.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628807
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
какие еще аргументы, почему за FindUserByLogin() для определения уникальности ты получишь хороших люлей на code review? Нет, тебе никаких аргументов не будет, читай документацию, оторви свой профуровень от плинтуса для начала
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628808
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordкакие еще аргументы, почему за FindUserByLogin() для определения уникальности ты получишь хороших люлей на code review? Нет, тебе никаких аргументов не будет, читай документацию, оторви свой профуровень от плинтуса для начала

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

Профуровень. Я чёт не обратил внимания, что ты обыкновенный залётный ПТ-шник, с однобайтовым мозгом.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628809
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все говно вышло? Каждый раз когда тебя в лужу сажают одна и та-же реакция...
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628810
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordвсе говно вышло? Каждый раз когда тебя в лужу сажают одна и та-же реакция...

Реакция на балаболов и людей, которые не способны ни ответить за свои слова, ни аргументировать, может быть только одна. Пшёл лесом.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628814
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот за свой базар это ты как раз не привык похоже отвечать, в реале ты-б за малую толику тех оскорблений и дерьма вылитых в этом топике ты-б зубы собирал по всему полу
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628816
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordвот за свой базар это ты как раз не привык похоже отвечать, в реале ты-б за малую толику тех оскорблений и дерьма вылитых в этом топике ты-б зубы собирал по всему полу

Мда. Быдлан детектед.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628820
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenford,

верноя я понял, что Вы за проверку уникальности на уровне БД именно логина, или домена при регистрации?

А можно полюбопытствовать, где Вы такое видели?
Вроде как принято сообщать о том, что такой логин, или домен уже занят до записи в БД.

Плюс регистрация вполне может оказаться визардом в N шагов с прикреплением скана документа, подтверждающего личность.
И запись в целевую таблицу происходит только после его прохождения и ещё каких-то проверок.
И как-то нелепо после всего сообщать пользователю, что такой логин уже занят, опираясь на ошибку о нарушении уникальности.

Кстати, если Вы так делаете, то не могли бы показать кусок кода?
Любопытно как Вы парсите сообщение, чтобы понять, что нарушена уникальность именно логина, или домена.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628827
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет, я понимаю, что в каком-нибудь корпоративном десктоп приложении, где оператор регистрирует нового сотрудника в лучшем случае раз в день, заморачиваться над отдельной проверкой уникальности логина не имеет особого смысла.
Ну ошибётся раз в год, увидит сообщение, сам поймёт что нетак.
Не поймёт так пнёт какого-нибудь айтишника, который про себя подумает: "Что, дура, разве не видишь, что написано 'attempt to store duplicate value (visible to active transactions) in unique index PERS_IDX_LOGIN. Problematic key value is (<expression> = Vasya)'? Ясен пень, что такой логин уже есть!", - а в слух вежливо скажет, что надо придумать другой логин.

Но в web-приложение такое тащить - чревато.
Я Вам бота напишу, что в цикле будет пробовать зарегистрировать один и тот же логин, и если приложение даже не ляжет, то по головке вас точно не погладят
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628834
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

Такие «проверки» на констрейтах имеют место быть малом корпоративном сегменте с небольшим айти отделом, которые пишут примитивные АРМ-ы для трёх с половиной человек, и качество кода там соответствующее (считай, никакое), за качеством там никто не следит, это никому не надо.
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628837
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,

за то время, пока я учавствовал в разработке корпоративных систем, у меня сложилось чёткое ощущение, что в России это то ещё болото и отставание от западных аналогов лет на 7 минимум.
Судя по тому, какие темы время от времени появляются на форуме, ситуация там не особо изменилась.

Так что я вполне допускаю и понимаю, что там проверки на констрейтах.
Хорошо хоть констрейнты есть, а то ведь люди с мейнфреймов переходили, иной раз так базу проектировали, что смех и грех
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628838
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stenfordза FindUserByLogin() для определения уникальности ты получишь хороших люлей
А за
Код: sql
1.
2.
IF EXISTS (SELECT 1 FROM PERSONS WHERE LOGIN = :login)
  RETURN -5


каких люлей отвесят и с какой аргументацией?
...
Рейтинг: 0 / 0
Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
    #39628861
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAверноя я понял, что Вы за проверку уникальности на уровне БД именно логина, или домена при регистрации?

А можно полюбопытствовать, где Вы такое видели?
Вроде как принято сообщать о том, что такой логин, или домен уже занят до записи в БД.

Плюс регистрация вполне может оказаться визардом в N шагов с прикреплением скана документа, подтверждающего личность.
И запись в целевую таблицу происходит только после его прохождения и ещё каких-то проверок.
И как-то нелепо после всего сообщать пользователю, что такой логин уже занят, опираясь на ошибку о нарушении уникальности.

Кстати, если Вы так делаете, то не могли бы показать кусок кода?
Любопытно как Вы парсите сообщение, чтобы понять, что нарушена уникальность именно логина, или домена.
любой аттрибут, на который навешано условие уникальности/ссылочной целостности должен проверяться на уровне БД, это не имеет никакого отношения к "заморачиванию" с доп проверками, нет никаких проблем с возврашением юзера на то место страницы где введен логин (или любой другой аттрибут не прошедший валидацию) который требуется изменить, а в случае если прозводится какая-то закачка документов в момент регистрации (только обычно это делается после, более правильный кейс - это подтвержение кода по смс), то данные идут в staging таблицу где работает точно такая-же логика. (в случае если надо подсветить уже заюзаный логин/домейн еще до нажатия на кнопку ОК никто не мешает "заморочится" с проверкой, только это не имеет никакого отношения к обсуждаемому вопросу)
...
Рейтинг: 0 / 0
25 сообщений из 218, страница 2 из 9
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Ссылочная целостность. Проверка данных до записи или обработка ошибок после?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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