データベース トランザクションは、データを「日時」列に保存するときにエラーをスローすることがあります。 エラー メッセージは、「datetime2」と「datetime」の間の型の不一致を示しています。列が「日時」であると思われる場合でも、解決策を検討してみましょう。
問題:
このエラーはコード内で修正できますか? それともデータベースの変更が必要ですか?
解決策:
解決策には、コードとデータベースの両方を調べることが含まれます:
コードベースのソリューション:
myDate
列に有効な DateTime
オブジェクトが設定されていることを確認します。初期化されていない myDate
はデフォルトで DateTime.MinValue
になります。これは SQL Server の "datetime" 型の許容範囲外です。DateTime.MinValue
処理: アプリケーションのロジックによっては、myDate
を明示的に DateTime.MinValue
に設定すると、問題が解決する可能性があります。データベースベースのソリューション:
このエラーは、「datetime2」から「datetime」への変換が試行されたことを示しています。データベース列が実際に「datetime」である場合、問題は保存中の Entity Framework の暗黙的な変換に起因します。
これを修正するには:
以上がDatetime2 から Datetime への変換エラー: コード修正またはデータベース変更?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。