OT:Има IMHO доста неща, които SQL Server не поддържа, но биха имали смисъл в корпоративна среда:
- Ограничения с възможност за отлагане, както е споменато тук
- МАРС:Защо трябва да задаваш опция за нещо напълно естествено?
- Ограничения за CASCADE DELETE:SQL Server позволява само една каскадна пътека за дадено ограничение CASCADE DELETE. Отново, не виждам причина, поради която не трябва да се разрешава каскадно изтриване чрез множество възможни пътища:В крайна сметка, в момента, в който наистина се изпълнява, винаги ще има само един път, който всъщност се използва, така че защо това ограничение ли е?
- Предотвратяване на паралелни транзакции в една ADO.NET връзка.
- Принудително изпълнение на всяка команда, изпълнена върху връзка, която има транзакция, която трябва да се изпълни в рамките на тази транзакция.
- Когато създавате УНИКАЛЕН индекс, NULL се третира като действителна стойност и се разрешава да се появи само веднъж в индекса. Представата на SQL за NULL като "неизвестна стойност" обаче би означавала, че стойностите NULL се игнорират напълно при създаването на индекса...
Всички тези малки неща правят много от референтната цялост и транзакционните функции, които бихте очаквали от пълноразмерна RDBMS, почти безполезни в SQL Server. Например, тъй като ограниченията с възможност за отлагане не се поддържат, идеята за „транзакция“ като външно последователна единица работа е частично отречена, единственото жизнеспособно решение – с изключение на някои мръсни заобиколни решения – е изобщо да не се дефинират ограничения за референтна цялост. Очаквам, естественото поведение на транзакцията е, че можете да работите вътре в нея по начина и реда на операциите, които харесвате, и системата ще се увери, че е последователна в момента, в който я извършвате. Подобни проблеми възникват от ограничението, че ограничение за референтна цялост с ON DELETE CASCADE може да бъде дефинирано само по начин, по който само едно ограничение може да доведе до каскадно изтриване на обект. Това наистина не отговаря на повечето реални сценарии.