sql >> データベース >  >> RDS >> Mysql

NOW()を日時データ型のデフォルト値として設定しますか?

    MySQL 5.6.5以降、DATETIMEを使用できます。 動的なデフォルト値で入力します:

    CREATE TABLE foo (
        creation_time      DATETIME DEFAULT   CURRENT_TIMESTAMP,
        modification_time  DATETIME ON UPDATE CURRENT_TIMESTAMP
    )
    

    または、両方のルールを組み合わせます:

    modification_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
    

    参照:
    http://dev.mysql .com / doc / refman / 5.7 / en / timestamp-initialization.html
    http://optimize -this.blogspot.com/2012/04/datetime-default-now-finally-available.html

    5.6.5より前では、TIMESTAMPを使用する必要があります データ型。レコードが変更されるたびに自動的に更新されます。ただし、残念ながら、自動更新されたTIMESTAMPは1つだけです。 フィールドはテーブルごとに存在できます。

    CREATE TABLE mytable (
      mydate TIMESTAMP
    )
    

    参照: http://dev.mysql.com/doc /refman/5.1/en/create-table.html

    MySQLがUPDATEのタイムスタンプ値を更新しないようにする場合 (INSERTでのみトリガーされるようにします )定義を次のように変更できます:

    CREATE TABLE mytable (
      mydate TIMESTAMP DEFAULT CURRENT_TIMESTAMP
    )
    


    1. PHPのmySQLテーブルからドロップダウンボックスにデータを入力します

    2. おい、その#tempテーブルを所有しているのは誰ですか?

    3. PHPでISO8601形式として日付を表示する方法

    4. MySQLエラー#1064を修正するにはどうすればよいですか?