MySQL タイムスタンプの精度制限を明らかにする
MySQL の TIMESTAMP フィールドとサポート関数には、長年開発者を困惑させてきた明らかな制限があります。ミリ秒/マイクロ秒の精度。この制約は、詳細な時間測定を必要とするユーザーにとって厄介な問題でした。
精度が限られているという不満
ミリ秒レベルの精度に依存するユーザーとして、この制限を発見したとき、あなたは当然のことながら不満を感じました。このような詳細なタイムスタンプをキャプチャできないと、アプリケーションの機能が大幅に妨げられる可能性があります。
回避策オプション
MySQL の制限はイライラさせるものですが、これを軽減する革新的な回避策が登場しました。チャレンジ:
1. BIGINT フィールド:
BIGINT フィールドを利用してタイムスタンプ値を保存できます。ただし、Doctrine またはアプリケーション コードによって正しく実装されていない場合、このメソッドはマイクロ秒を考慮しない可能性があります。
2. UDF 拡張機能:
UDF (ユーザー定義関数) 拡張機能をコンパイルすることも別の回避策です。ただし、このアプローチは脆弱な可能性があり、長期的な解決策にはならない可能性があります。
MySQL 5.6.4 での解決策
幸いなことに、MySQL は最終的にこの懸念に対処しました。バージョン 5.6.4 では。この更新により、TIME、DATETIME、TIMESTAMP 値に対するマイクロ秒精度の小数秒のサポートが導入されました。この機能強化により、MySQL は他の一般的なデータベース システムと連携し、正確かつ詳細なタイムスタンプ処理機能が保証されます。
以上がMySQL のタイムスタンプにミリ秒の精度がないのはなぜですか?また、それを解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。