5

の生成にデフォルトの制約名を含めます例えば、デフォルトの制約を持つ列、:は、私は、Visual Studio 2012で<strong>SQL Serverデータベースプロジェクト</strong>を使用して、更新スクリプトを比較して生成するときに、以下のような問題を持っています更新スクリプト

[NewColumn] NVARCHAR(50) CONSTRAINT [DF_ExistingTable_NewColumn] NOT NULL DEFAULT N'' 

残念ながら、デフォルトの制約の名前が表示されない:

スキーマ内からの比較)更新スクリプトの生成(スキーマがの比較)実際のデータベース

  • と私のプロジェクトの比較作成した更新スクリプトは、次のスクリプト(無制約名)が含まれています。

    ALTER TABLE [dbo].[ExistingTable] 
        ADD [NewColumn] NVARCHAR (50) DEFAULT N'' NOT NULL; 
    

    これは大きな手落ちのように思えるので、私はどこのすべてのデータベース操作にデフォルトの制約の名前が含まれるように魔法のスイッチを見つけるために思ったんだけど。

  • 答えて

    4

    私はあなたの定義で注文が外れている可能性があると思います。制約定義の途中ではなく、行末まで "NOT NULL"部分を移動してみてください。

    [NewColumn] NVARCHAR(50) CONSTRAINT [DF_ExistingTable_NewColumn] DEFAULT N'' NOT NULL 
    
    関連する問題