:私はSSMSを使用して新しいデータベースを作成すると、新しいデータベースは、デフォルトの設定の下にいくつかの奇妙ありデータベースオプション:デフォルトでは、新しいデータベースでは「SET ANSI_NULLS OFF」がオフになっていますか? SSMS 2014を使用して
ALTER DATABASE [del] SET ANSI_NULL_DEFAULT OFF
GO
ALTER DATABASE [del] SET ANSI_NULLS OFF
GO
ALTER DATABASE [del] SET ANSI_PADDING OFF
GO
ALTER DATABASE [del] SET ANSI_WARNINGS OFF
GO
ALTER DATABASE [del] SET ARITHABORT OFF
私はスクリプトとストアドプロシージャをテストし、ANSI_NULLSが実際にONになっているようです。
なぜ私はデータベースを作成するときにANSI_NULLSのような重要な設定がオフになっているのですか?スクリプト内でどのようにONになるのでしょうか?
をcompatabiltyに起因する可能性があります。特にあなたが引用したMSDNのテキストを考慮すると、将来的にANSI_NULLSをFalseに明示的に設定しなくてもエラーが発生することを示しています。私は、サーバーのインストール中にそのような選択に気づいたことを思い出すことはできません。 ただし、作成されたすべての新しいデータベースのモデルである "model"というシステムデータベースでこの設定を変更することはできます。モデル内の設定は、新しいデータベースのデフォルトとして機能します。 –