1. ホーム
  2. sql-server-2005

[解決済み] SQL Server 2008とSQL Server 2005の使用と日付時刻について

2022-09-12 08:38:51

質問

私は、2008データベースに対してエンティティフレームワークモデルを構築しました。 すべて2008データベースに対して問題なく動作します。 2005データベースでエンティティを更新しようとすると、このエラーが発生します。

使用している SQL Server のバージョンは、datatype 'datetime2' をサポートしていません。

私は特に、データベースを構築したときに、2008 の機能を使用しませんでした。 コード内に datetime2 への言及が見当たりません。 そして、はい、列はデータベースで "datetime" として定義されています。

どのように解決するのですか?

ググってみると、以下のようなものがあります。 解決法 .

EDMX をファイル エディターで開きます(または Visual Studio で "open with..." を選択し、XML エディターを選択します)。一番上にストレージ モデルがあり、ProviderManifestToken という属性があります。この属性は、2008という値を持っているはずです。これを 2005 に変更し、再コンパイルすると、すべてが動作します。

注意: データベースからモデルを更新するたびに、この操作を行う必要があります。