Výchozí nastavení možností je OFF
protože se vší pravděpodobností byla tato databáze vytvořena a skriptována, aniž by se dotkla některého z výchozích nastavení. Když je databáze vytvořena, je v podstatě klonována z model
systémové databáze a při zcela nové instalaci SQL Serveru bude nastavení ANSI v databázi OFF
, i když některá z těchto nastavení (například ANSI_NULLS
) jsou možnosti, které byste opravdu nikdy nechtěli být OFF
pro jakoukoli moderní databázovou aplikaci. Ve skutečnosti v případě ANSI_NULLS
v dokumentaci je konkrétně uvedeno, že možnost jej vůbec vypnout je zastaralá
, ačkoli to bude pravděpodobně ještě několik let, než tomu tak skutečně bude.
A v tom je ten neduh:tato nastavení jsou stále OFF
ve prospěch starých aplikací, které musely tyto možnosti zapnout ON
cestu zpět, kdy těžit z jejich dobroty (a zlomových změn). Pokud pro ně relace neurčuje žádné hodnoty, použije se nastavení databáze.
Většina aplikací však dělá zadat tato nastavení v relaci, pokud ne explicitně, pak implicitně prostřednictvím své knihovny pro přístup k datům. Podle dokumentace na SET ANSI_DEFAULTS
, který přepíná spoustu nastavení najednou:
DB-Library je stará přístupová knihovna, kterou však stále používají některé starodávné aplikace a volitelně jako záložní zdroj pro věci, jako je FreeTDS, takže občas můžete stále narazit na aplikaci, která záměrně nebo náhodně používá nastavení databáze, ale toto je stále vzácnější.
Pokud jde o nejlepší hodnotu pro tyto možnosti, která zcela závisí na vašem případu použití. Pokud musíte podporovat staré aplikace, které očekávají staré chování, možná nebudete mít jinou možnost ponechat nastavení databáze na OFF
. Pokud máte aplikaci, která se připojuje přes starou knihovnu, ale opravdu očekává moderní sémantiku SQL, možná ji budete chtít ON
. U všech ostatních aplikací jsou tyto možnosti pravděpodobně již nastaveny pro jednotlivé relace na jejich (nesprávné) hodnoty samotnou aplikací a na tom, co nakonfigurujete, stejně nezáleží.
Diskuse o každé jednotlivé možnosti a o tom, kdy ji chcete ON
nebo OFF
by překročilo meze rozumné odpovědi. Nahlédněte do dokumentace ke každému z nich a formulujte své vlastní osvědčené postupy. Můžete povolit věci jako SET
požadavky na možnosti pro indexy na počítaných sloupcích
průvodce, které vyžadují spoustu možností, aby byly ON
než je vůbec budete moci vytvořit (a obecně se považují za příjemnou věc).