1

SQL Server では、以下がエラーなしで実行されます。

create database [MyExample] with compatibility_level = 100;  -- runs! why?

データベースは問題なく作成されますが、互換性レベルは設定されません。では、なぜその構文が許可されているのでしょうか?

対照的に、私が行う場合:

create database [MyExample] with nonsense_notexisting = 100;  -- fails :-)

次に、予想どおり「nonsense_noteexisting」の近くに不正な構文というエラーが表示されます。

私の質問は次のとおりです。互換性レベルが設定されていない場合、最初の構文が許可されるのはなぜですか?


PS!特定の互換性を持つデータベースを作成する方法を尋ねているわけではありません。私はそれが次のように行われることを知っています:

create database [MyExample]; alter database [MyExample] set compatibility_level = 100;
4

0 に答える 0