| 
 | 
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  NoDataFoundPetro123а если между формой и базой 4 слоя не пересекающихся по феншую архитектуры? Ага, и реализовано на dbfках FoxBase, да? не. На биткоинах и микросервисах. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 12.04.2018, 17:09 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  mikronЯ предпологаю, тут путаница в определениях. уникальность/ссылочная целостности != валидаторы ввода. Я тоже считаю, что "ссылочная целостности" может проверятся только на базе данных. Всё остальное - ненадёжно и просто шарлотанство. Но бывают и "отшепенцы". Путать толко не надо. ссылочная целостность не обязательно вообше связана с пользователем И в то-же время валидация вчодных данных значительно богаче в рассматриваемых критериев чем "ссылочная" целостность. Может рассматривать например источник вчодныч данныч, время поступления данных етц. Нет никакой путанницы в определениях. С самого начала , было сказано, что валидация не отменяет констрейты, и что констрейты это не валидация. А конкретные аргументы почему требуется своя валидация НЕ СМОТРЯ на констрейты, я в этом треде приводил, по пукнтам. Это важные пункты, просто в определённых кругах, на качество кода нас$ать, или люди просто не понимают, что это означает. Отдельные люди реально думают, что они экономят на валидации, в то же время пишут откровенный говнокод и не понимая разницы между ошибками и валидацией. Вставка данных в БД с нарушениями целостности, это ОШИБКА, т.е. заталкиваются данные, о которых приложение не знает, корректны они или нет, и полагается на БД. Но БД не может обеспечить на 100% бизнес-целостность, даже более того, он не может обеспечить даже на 50% в сложных серьёзных системах. Разнос валидации на проверки в коде и часть на ошибки БД это, извините, пиз$#ц. Как это сопровождать потом? Как тестировать? Что за фигня вообще, как такое может быть, что эти проблемы не очевидны? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 12.04.2018, 17:17 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  mikronЯ тоже считаю, что "ссылочная целостности" может проверятся только на базе данных. Серьёзно? Про принцип наименьшего удивления слышали? Юзер вводит логин, система подсказывает, что логин свободен, он тыкает Sumbit и получает отлуп. Что это значит для пользователя? Система его нае$#ла. Что это значит для бизнеса? Потеря клиента. Потому что видите ли, какому-то ущербному Васе кажется, что констрейты это всё. Или так, пользователь выбирает что-то там из выпадающего списка в одном из полей, потом жмёт такой ОКАЙ, и ррр-раз, такого %ITEM% не существует. Нарушение целостности! Алярм! Это как не существует? А чё я тогда там выбирал? Но русский разработчик матёр и суров. Он считает, что пользователь это табурет. Всё выдержит, утрётся и придёт ещё. При чём это верно как в разработке, так и в каком-нибудь автовазе. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 12.04.2018, 17:25 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  hVostt, именно это вы и делаете (то что ты выше описал) а "русский прогер" все гарантирует: - если сказал что "логин" свободен, всем другим запрещен ввод такого логина (пока транзакция не закончится) - если "че то" выбрал, то это "че то" гарантированно есть для всех (пока транзакция не закончится) ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 12.04.2018, 17:36 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Лол, вы под конец-то хоть определитесь с граничными  условиями :) Ввод данных для сайтега или в ERP? Разница ощутимая. В случае заведения какой-нибудь расходной статьи, уникальный индекс по имени/коду статьи скажет бабе Маше, что такая статья есть. В случае публичного мылсервера - ясен пень нельзя мучать человека отшибами "Ты такой красивый тут уже есть", ему надоест и он уйдет. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 12.04.2018, 17:39 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  hVosttmikronЯ тоже считаю, что "ссылочная целостности" может проверятся только на базе данных. Юзер вводит логин, система подсказывает, что логин свободен, он тыкает Sumbit и получает отлуп. Что это значит для пользователя? Система его нае$#ла. Что это значит для бизнеса? Потеря клиента. Ты возражаеш моему утверждению про "ссылочную целосность" и как контпример приводиш случай "валидации". И одновремменно утверждаеш что путаницы с понятиями нет. В таком случае это демагогия. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 12.04.2018, 17:41 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  hVosttбыли ситуации и не однократно, когда несколько пользователей одновременно правили одну большую форму. никто не потерял данные и не перезатёр друг друга, всё отлично мержится на апп, и единичные конфликты отображаются в UI и резолвятся пользователями. так то если сильно припрёт, можно вообще на вебсокетах (да даже аяксом) сразу сохранять поле, которое стало не активным ну или перед сохранением проверять, когда последний раз было изменение и если попадает в промежуток между "открыл форму" (ts лежит в hidden) и "нажал сохранить", то извещать но такое редко нужно настолько редко, что я только щас, на лету всё это придумал ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 12.04.2018, 18:15 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  tip78так то если сильно припрёт, можно вообще на вебсокетах (да даже аяксом) сразу сохранять поле, которое стало не активнымвот если использовать ws то всё решается намного проще. если , для примера, взять элементарный случай - заполнение множеством юзеров одну таблицу с исключением правки одной ячейки/строки несколькими юзерами. то как только один начал вводить данные - у всех остальных данная ячейка лишается возможности редактирования и её фон становится отличным от остальных. при этом не исключен вариант отображения вводимых символов у всех по мере их ввода юзером . или по окончанию ввода - отображение введённого. и изменение фона или цвета символов для обозначения , что данные изменены. если продолжить фантазии - то можно и отобразить какой юзер это изменил. и субд со своими блокировками здесь не приделах. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 12.04.2018, 21:39 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  tip78настолько редко, что я только щас, на лету всё это придумалвсё уже придумано и работает..... ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 12.04.2018, 21:40 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  вадяи субд со своими блокировками здесь не приделах. да, блокировки тут конечно никаким боком, достаточно в редиске флажок оставить ws вообще супер технология, с ней кучу всего прикольного можно создавать ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 12.04.2018, 21:57 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  tip78ws вообще супер технологияты первый такое говоришь (после меня     ) tip78с ней кучу всего прикольного можно создаватьчто и создаётся ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 12.04.2018, 22:06 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  ну не всем же пхп-демонов писать зато тут по запросам спецы сильные ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 13.04.2018, 00:19 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  skyANAКакая завидная упёртость, я восхищён. ТС же написал, что есть у него пресловутый уникальный индекс для логина. И у всех остальных он есть. К чему выдумывать каких-то неопытных разработчиков, что ограничиваются только валидаторами, а на ограничения целостности забивают? И вот сидит сам с собой обсуждает свои же фантазии мои подозрения оправдались - ты так и не понял о чем тут конкретно идет речь, конфликт обновления не нагуглил что такое? Я-ж говорил код выкладывай я-б тебе сразу на это указал, но нет, люлей испугался Вообще очень показателен тут уровень многих разработчиков, которые кодами клепают mvc странички на 5 пользователей и ладно бы слушали что опытные люди говорят, так нет, начинают свое невежество пропагандировать другим ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 13.04.2018, 01:43 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  schiЯ все-таки не понимаю, почему обеспечение уникальности в базе данных при многопользовательской работе называют валидацией ? Если это валидация, то ей, валидацией, занимается база данных, для того в нее всякие constraints встраивают. в 21333538 приведен пример, когда в двум браузерам возвращается isAvailable: true , интересно, что будет, если продолжить в бвух же браузерах регистрацию, опираясь на это значение ? сама терминология не имеет принципиального значения, называй это валидацией уникальности, но это действительно совершенно не имеет ничего общего с валидацией длины строки, это абсолютно разные валидации ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 13.04.2018, 01:47 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  mikronТы возражаеш моему утверждению про "ссылочную целосность" и как контпример приводиш случай "валидации".  И одновремменно утверждаеш что путаницы с понятиями нет. В таком случае это демагогия. это типично для писателей однопользовательских систем, они на такие ошибки на практике никогда и не наталкиваются, ты не сможешь получить конфликт обновления в системе в несколько пользователей, и подход с requireUniqueFlag упомянутый выше даже будет работать, ситуация в многопользовательской системе совершенно другая. Их путает понятие "валидация", т.к. опять-же в однопользовательской системе предварительная проверка действительно сойдет за "валидацию" ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 13.04.2018, 01:58 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  tip78так то если сильно припрёт, можно вообще на вебсокетах (да даже аяксом) сразу сохранять поле, которое стало не активным ну или перед сохранением проверять, когда последний раз было изменение и если попадает в промежуток между "открыл форму" (ts лежит в hidden) и "нажал сохранить", то извещать но такое редко нужно настолько редко, что я только щас, на лету всё это придумал конфликт возникший между "открыл форму" и "нажал ОК" это не конфликт обновления обсуждаемый здесь, обсуждаемый конфликт появится когда несколько тысяч пользователей работают в системе одновременно, там и будут возникать эти "необьяснимые" для писателей однопользовательских систем ошибки, как так, ведь они-ж добавили код "валидации" уникальности перед сохранением, ошибка просто не может появится! Навепно юзеры что-то там напартачили... ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 13.04.2018, 02:06 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  tip78кстати, господа крутые разработчики, а как вы вообще вставляете данные в БД? через PDO? как вы совмещаете транзакцию с подготовленными запросами, или вы на это забили? когда в одной форме находятся сразу несколько сущностей, но сабмитятся сразу разом, но в разные таблицы (например, телефоны это отдельная таблица), вы такое вообще проходили? транзакция называется, еще одно незнакомое клепателям однопользовательских форм понятие. К счастью тот-же EF автоматически заворачивает все в транзакцию при сохранении, правда все равно некоторые умудряются вызывать savechanges() несколько раз подряд из-за неумения и базового непонимания работы многопользовательски систем, но тут уже ничего не поделать, таких надо просто увольнять ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 13.04.2018, 02:14 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  stenfordskyANAКакая завидная упёртость, я восхищён. ТС же написал, что есть у него пресловутый уникальный индекс для логина. И у всех остальных он есть. К чему выдумывать каких-то неопытных разработчиков, что ограничиваются только валидаторами, а на ограничения целостности забивают? И вот сидит сам с собой обсуждает свои же фантазии мои подозрения оправдались - ты так и не понял о чем тут конкретно идет речь, конфликт обновления не нагуглил что такое? Я-ж говорил код выкладывай я-б тебе сразу на это указал, но нет, люлей испугался Вообще очень показателен тут уровень многих разработчиков, которые кодами клепают mvc странички на 5 пользователей и ладно бы слушали что опытные люди говорят, так нет, начинают свое невежество пропагандировать другим Что, задело тебя? Сразу хамло включил. У меня под десяток миллионов пользователей в день, а у тебя? Сколько ты там писал? 500? Иди подотрись своим опытом ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 13.04.2018, 13:42 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  ViPRos- если "че то" выбрал, то это "че то" гарантированно есть для всех (пока транзакция не закончится) И как разруливается конфликт в случае, когда "чё то" удалено, потом выбрано кем-то (успел залочить) и вставлено куда-то? Кто станет дураком? Тот, который удалил, или тот, который вставил? В общем случае - где предел сложности? Сколько хитрых алгоритмов разруливания ты способен написать? Поэтому всегда где-то останавливаются. Ну и сопутствующие 0.001% ошибок от количества операций принимается как неизбежный ущерб. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 13.04.2018, 14:11 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  mikronЯ предпологаю, тут путаница в определениях. уникальность/ссылочная целостности != валидаторы ввода. Я тоже считаю, что "ссылочная целостности" может проверятся только на базе данных. Всё остальное - ненадёжно и просто шарлотанство. Но бывают и "отшепенцы". Путать толко не надо. ссылочная целостность не обязательно вообше связана с пользователем И в то-же время валидация вчодных данных значительно богаче в рассматриваемых критериев чем "ссылочная" целостность. Может рассматривать например источник вчодныч данныч, время поступления данных етц. На мой взгляд типы вроде Стенфорда сначала не читают то, что пишет ТС, а потом включают дурака и вещают, что речь якобы не о том и вокруг все тупицы, а он на коне. Йоба, типичная ситуация ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 13.04.2018, 14:11 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  skyANAЧто, задело тебя? Сразу хамло включил. У меня под десяток миллионов пользователей в день, а у тебя? Сколько ты там писал? 500? Иди подотрись своим опытом 500 запросов одномоментно. Понятие одномоментности ты в прошлый раз так и не осилил как ни старался. А про свои десятки миллионов пользователей можешь тут больше не втирать, по твоим познаниям ты максимум разносишь кофе тем, кто реально пишет систему, если таковая реально существует конечно. Код наконец будет или тебе не дают подсмотреть в исходниках? Если не будет - отправишся в игнор, я хамство и необязательность могу терпеть если собеседник интересный или тред полезный, но от тебя кроме флуда и откровенно нудных постов ничего нет. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 13.04.2018, 14:19 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  NoDataFoundЛол, вы под конец-то хоть определитесь с граничными  условиями :) Ввод данных для сайтега или в ERP? Разница ощутимая. В случае заведения какой-нибудь расходной статьи, уникальный индекс по имени/коду статьи скажет бабе Маше, что такая статья есть. В случае публичного мылсервера - ясен пень нельзя мучать человека отшибами "Ты такой красивый тут уже есть", ему надоест и он уйдет. Дык епта: 21331759 Я Вам по секрету скажу: ТС пишет сайтег, он на первой странице это упоминал. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 13.04.2018, 14:19 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  stenfordskyANAЧто, задело тебя? Сразу хамло включил. У меня под десяток миллионов пользователей в день, а у тебя? Сколько ты там писал? 500? Иди подотрись своим опытом 500 запросов одномоментно. Понятие одномоментности ты в прошлый раз так и не осилил как ни старался. А про свои десятки миллионов пользователей можешь тут больше не втирать, по твоим познаниям ты максимум разносишь кофе тем, кто реально пишет систему, если таковая реально существует конечно. Код наконец будет или тебе не дают подсмотреть в исходниках? Если не будет - отправишся в игнор, я хамство и необязательность могу терпеть если собеседник интересный или тред полезный, но от тебя кроме флуда и откровенно нудных постов ничего нет. Нет у тебя 500 запросов одномоментно. Не ври. Только в тестах и твоих фантазиях да и то это не так называется. Есть Requests per second, Requests per minute, Calls per minute. И нет такой метрики как количество запросов одномоментно. Лошара ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 13.04.2018, 14:23 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  alex55555ViPRos- если "че то" выбрал, то это "че то" гарантированно есть для всех (пока транзакция не закончится) И как разруливается конфликт в случае, когда "чё то" удалено, потом выбрано кем-то (успел залочить) и вставлено куда-то? Кто станет дураком? Тот, который удалил, или тот, который вставил? В общем случае - где предел сложности? Сколько хитрых алгоритмов разруливания ты способен написать? Поэтому всегда где-то останавливаются. Ну и сопутствующие 0.001% ошибок от количества операций принимается как неизбежный ущерб. Удаленное не может быть выбрано, выбранное не может быть удалено и т.д. Все максимально честно - оптимизм пессимизм их смесь ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 13.04.2018, 14:24 | 
  
  
  
   | 
||
| 
 
Ссылочная целостность. Проверка данных до записи или обработка ошибок после? 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  skyANAНет у тебя 500 запросов одномоментно. Не ври. Только в тестах и твоих фантазиях да и то это не так называется. Есть Requests per second, Requests per minute, Calls per minute. И нет такой метрики как количество запросов одномоментно. Лошара иди это расскажи нашему клиенту, который проводил нагрузочное тестирование и проект был сдан. Понятие "нагрузочное тестирование" тебе тоже не знакомо, так-же как и многопользовательская работа. Код будет или нет? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 13.04.2018, 14:28 | 
  
  
  
   | 
||
| 
 | 

start [/forum/topic.php?fid=33&msg=39629364&tid=1547229]:  | 
    0ms | 
get settings:  | 
    9ms | 
get forum list:  | 
    14ms | 
check forum access:  | 
    4ms | 
check topic access:  | 
    4ms | 
track hit:  | 
    55ms | 
get topic data:  | 
    9ms | 
get forum data:  | 
    3ms | 
get page messages:  | 
    64ms | 
get tp. blocked users:  | 
    2ms | 
| others: | 11ms | 
| total: | 175ms | 

| 0 / 0 | 

    Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
    
    
    «На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даете согласие с использованием данных технологий.»
    
    
    ... бла, бла, бла ...