2

Entity Framework と Code First Migrations を使用して、開発サーバーでデータベースを更新しようとしています (ローカル マシンではすべて正常に動作しました)。コマンドupdate-database -Script -SourceMigration:201305161422570_AddedWidgetsを使用して、必要なスクリプトを生成しました。サーバー上の SQL Management Studio (2008R2) でこのスクリプトを実行すると、スクリプトが __MigrationHistory テーブルに書き込もうとするたびにエラーが発生します。正確なエラーは次のとおりです。

Cannot insert the value NULL into column 'CreatedOn', table 'master.dbo.__MigrationHistory'; column does not allow nulls. INSERT fails.

以前にこのエラーに遭遇したことはありませんが、__MigrationHistory テーブルに column がなく、CreatedOnその名前の列に何かを入れようとしていないため、非常に奇妙です。これが私の挿入ステートメントの1つです:

INSERT INTO [__MigrationHistory] ([MigrationId], [Model], [ProductVersion]) VALUES ('201306031825584_AddedTitleToSocialLevel', 0x1F8B0800000000000400EDBDDD92...0, '5.0.0.net45')

ここからどこへ行けばいいのかわからないのですが、誰かアドバイスはありますか?

4

2 に答える 2

1

エラーは、データベース「マスター」にテーブル「__MigrationHistory」があり、その行を挿入するときに設定されていないnull不可の列「CreatedOn」が確実にあると不平を言っています。Dev サーバーの DB のスキーマを再確認する必要があります。

于 2013-06-07T12:53:42.957 に答える