ホームページ  >  記事  >  データベース  >  MySQL 4.0 テーブルには自動更新を備えた複数の TIMESTAMP カラムを持つことができますか?

MySQL 4.0 テーブルには自動更新を備えた複数の TIMESTAMP カラムを持つことができますか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-13 09:59:02959ブラウズ

Can MySQL 4.0 Tables Have Multiple TIMESTAMP Columns with Automatic Updates?

複数の TIMESTAMP カラムに対する MySQL 4.0 の制限の克服

背景:

MySQL 4.0 テーブルを作成するとき、ユーザーはよく次のような問題に遭遇します。 Created と LastUpdated の両方のタイムスタンプ列をデフォルト値の CURRENT_TIMESTAMP で定義しようとするとエラーが発生しました。これは、MySQL 4.0 のタイムスタンプ カラムのデフォルト設定により、そのようなカラムの存在が 1 つのみに制限されているためです。

質問:

ユーザーは Created タイムスタンプと LastUpdated タイムスタンプの両方を持つことができますかそれとも、トランザクションごとに LastUpdated フィールドを手動で更新する必要がありますか?

回答:

初期のバージョン:

MySQL 5.5 より前では、この制限が適用されていました。 DEFAULT CURRENT_TIMESTAMP 句または ON UPDATE CURRENT_TIMESTAMP 句を使用して定義できる TIMESTAMP 列は 1 つだけです。したがって、ユーザーはトランザクションのたびに LastUpdated フィールドを手動で更新する必要がありました。

MySQL 5.5:

MySQL 5.5 のドキュメントでは、LastUpdated フィールドをまだ使用できないことが明らかにされています。

MySQL 5.6.5 以降:

ただし、MySQL 5.6 では大幅な変更が導入されました。 5.自動初期化または更新を伴う複数の TIMESTAMP 列の制限が解除されました。そのため、MySQL バージョン 5.6.5 以降では、ユーザーは Created と LastUpdated の両方のタイムスタンプ列を必要なデフォルト値で定義できます。これにより、トランザクション中に手動で更新する必要がなくなります。

以上がMySQL 4.0 テーブルには自動更新を備えた複数の TIMESTAMP カラムを持つことができますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。