Home >Database >Mysql Tutorial >How to set the default time in mysql

How to set the default time in mysql

PHPz
PHPzOriginal
2023-04-20 10:10:422757browse

MySQL is a common relational database management system. When using MySQL, it is often necessary to set a default time. Because the default time setting can help improve the accuracy of the data. So how to set the default time in MySQL? This article will introduce you to the knowledge of MySQL default time settings.

  1. MySQL time type

In MySQL, there are many time types, such as DATE, TIME, DATETIME, YEAR, TIMESTAMP, etc. These time types represent different time formats. The following is a brief introduction to these time types:

  • DATE: represents date in the format YYYY-MM-DD;
  • TIME: represents time in the format HH:MM:SS ;
  • DATETIME: represents date and time, in the format YYYY-MM-DD HH:MM:SS;
  • YEAR: represents the year, in the format YYYY;
  • TIMESTAMP: Timestamp in the format YYYY-MM-DD HH:MM:SS.
  1. MySQL default time setting

In MySQL, you can use the DEFAULT keyword to set the default value. The default value can be a constant, expression, or function. You can use the CURRENT_TIMESTAMP function when setting the default time, which returns the date and time of the current time. Here is an example:

CREATE TABLE `example` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

In this example, a table named example is created. Among them, the default value of the created_at column is CURRENT_TIMESTAMP. This means that if created_at is not assigned a value when executing the INSERT statement, the date and time of the current time will be automatically filled in.

In addition to using the CURRENT_TIMESTAMP function, you can also use the NOW() function to set the default time. The NOW() function has the same function as the CURRENT_TIMESTAMP function, both returning the date and time of the current time. Example of using the NOW() function to set the default time:

CREATE TABLE `example` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  `created_at` TIMESTAMP DEFAULT NOW(),
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

The difference between this code and the previous code is that the NOW() function is used in the default value of the created_at column.

  1. Notes on MySQL default time settings

When setting the default time, you need to pay attention to the following points:

  • If you use the CURRENT_TIMESTAMP function Set the default time. When the row is updated, the value of the created_at column will be automatically updated to the current time. If you do not want to update the value of the created_at column, you can change the column type to the DATETIME type;
  • If you use the NOW() function to set the default time, the value of the updated_at column will not be automatically updated.
  • If you use the NOW() function to set the default time in multiple columns at the same time, the default values ​​of these columns will be the same. Therefore, the NOW() function needs to be applied to each column separately.
  1. Conclusion

This article introduces the relevant knowledge about MySQL default time settings. When actually using MySQL, setting the default time is very important. Through the introduction of this article, I believe you have understood how to set the default time, and can be more comfortable in practical applications.

The above is the detailed content of How to set the default time in mysql. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn