私は小さなMVC4アプリケーションを作成し、ローカルSQL 2012サーバーでデータベースを作成しました。私の2012年のデータが、SQL 2008のプロダクションとして私の安価な共有ホストに移されたことを「インポート」しました。 aspmembership以外のテーブルにいくつかの変更を加え、sql 2008からテーブルを削除して再インポートしました。私はアカウントを登録しようとした場合 は、何らかの理由で私は、このエラーにdatetime2データ型をsmalldatetimeデータ型に変換すると、範囲外の値が返されました。 r nステートメントが終了しました
The conversion of a datetime2 data type to a smalldatetime data type resulted in an out-of-range value.\r\nThe statement has been terminated
を取得できません。私はすべてのsmalldatetimecolumnsのdatetime2列にchaningしようとしましたが、smalldatetimesがないのに何らかの理由で同じエラーが発生しますか?
誰にもアイデアはありますか?ありがとうございました。
編集:未来の人々 - 私はこれがなぜ修正されたのか不明ですが、SQL 2012の代わりにSQL Express 2008のテーブルを再作成し、それらを移動しました。うまく働いた。
これらは関連するようです:http://stackoverflow.com/questions/655745/what-is-datetime2 and http://stackoverflow.com/questions/4608734/the-conversion-of-a-datetime2-data-type -to-a-datetime-data-type-in-o – daryal
日付が魔法の年の「1753」の前であるため、「smalldatetime」で失敗したようですが、これを引き起こす値を確認できますか? – V4Vendetta
日付の範囲[smalldatetime](http://msdn.microsoft.com/en-us/library/ms182418.aspx?ppud=4)の場合、1900-01-01から2079-06-06、[datetime2](http ://msdn.microsoft。com/ja-us/library/bb677335.aspx)は、0001-01-01から9999-12-31です。あなたの値が 'smalldatetime'の範囲外にあるかどうかを確認してください。 'smalldatetime'変数を使うストアドプロシージャや関数、あるいは' smalldatetime'パラメータを持っていますか? –