Раз в базе не реализована никакая бизнес-логика, то возможна такая ситуация: В базу заходит человек с правами sa, но с нулевым пониманием того, что он делает.(не надо спрашивать у меня, откуда у него такие права :о)) Заходит не из приложения, а используя SQL Server Management Studio. Спокойно удаляет все данные из одной таблицы. В других таблицах остаются данные, которые ссылаются на удаленные данные, но, т.к. внешних ключей нет, получается нарушенная целостность. Имхо, "защиту от дурака" все-таки лучше реализовать на сервере БД, это защищает и от попыток что-то сломать из приложения, и от таких же попыток непосредственно на сервере БД.
|