DateTime2 から DateTime への型変換における範囲外エラーを解決します
問題の説明
DateTime 列を含むデータ テーブルからデータベースにデータを保存しようとすると、次のエラーが発生しました:
<code>将 datetime2 数据类型转换为 datetime 数据类型导致越界值。</code>
エラー メッセージにはデータ型が一致しないことが示されていますが、データ テーブルとデータベース列のデータ型は両方とも DateTime です。
質問
この問題はコードによって解決できますか? それともデータベース構成を変更する必要がありますか?
解決策
このエラーは、データ テーブルの DateTime フィールドが有効な値に明示的に初期化されていないために発生します。値の型として、DateTime は null 値を受け入れず、デフォルトの最小値 01/01/0001 になります。ただし、SQL Server の DateTime データ型の有効な日付の最小値は 01/01/1753 です。
解決策:
短い答え: データを保存する前に、データ テーブルの DateTime フィールドを有効な日付に初期化します。
詳細な回答:
範囲外エラーを回避するには:
以上がSQL Server で DateTime2 を DateTime に変換する際の「範囲外」エラーを解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。