Здравствуйте, Monkey-Bee, Вы писали:
G>>3)Если надо переопределить логику CRUD, например пометка IsDeleted вместо удаления, то создавайте в СУБД вьюхи + instead of триггеры.
MB>со вьюхами понятно — отображаем там тех кто у котрых IsDeleted=false. а вот с тригерами не совсем ... во первых тригеров не люблю — считаю их парашутом если при проектировании не учли то в тригирах отыграемся
ну а если серьезно, то если заранее изветсна логика то лучше ее сразу вынести в рамки процесса а не в тригера... по этому если не против уточните.
Триггеры на вьюхе позволяют работать с ней как с таблицей. При переходе на вьюхи с триггерами код приложения менять не придется. Кроме того триггеры позволяют сократить количество написанного SQL кода. Например в случае пометки удаленных записей флагом IsDeleted достаточно будет созать вьюху и написать один триггер на удаление, если делать с помощью процедур, то надо писать все 4 штуки.
G>>4)Если вам нужна очень сложная логика CRUD, то создавайте хранимки
MB>а почему очень сложная логика CRUD процедур, то в хранимки? не понятно
очень сложную логику легче реализовать как раз не стороне шарпа ... поясните плиз для тех кто в танке 
Я имею ввиду именно логику связанную с операциями CRUD. Например для выборки требуется танцы с курсорами, а вставка осуществляется каким-нибудь хитрым образом. Такие операции лучше делать хранимками. Но такие случаи встречаются очень редко.
Вся бизнес-логика должна быть в коде приложения, а не в БД.