mysql - 执行更新查询时更改 TIMESTAMP

标签 mysql ddl

我尝试使用更新查询更新一些值,但在 reg_update 上创建此表时遇到问题:

CREATE TABLE Product (
  id INT(3) PRIMARY KEY,
  product VARCHAR(20) NOT NULL,
  reg_date TIMESTAMP,
  reg_update NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 
);

我收到这个错误:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual 
that corresponds to your MariaDB server version for the right syntax to use 
near 'NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 
)' at line 5

在这种情况下是否可以更新reg_update

最佳答案

试试这个

    CREATE TABLE Product (
      id INT(3) PRIMARY KEY,
      product VARCHAR(20) NOT NULL,
      reg_date TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
      reg_update TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 
    );

关于mysql - 执行更新查询时更改 TIMESTAMP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57500988/

相关文章:

hadoop - 通过 Bash Shell 创建 Hive 表错误

teradata - 创建 Teradata volatile 表并使用 isql 从表中选择

mysql - 使用 JPA2 + Hibernate + Eclipse 4.2 + MySQL 5.5 从实体生成模式

mysql - 如何根据条件排序?

mysql - 如何根据最高值进行分组

mysql - SQL:根据条件加入和计数

java - 来自 apache 的 DDLUtils 的替代品

sql - 每个 DDL SQL 命令都是可逆的吗? 【数据库版本控制】

php - 保存客户时,Magento 停留在 "Please Wait"

php - 将数据加载到水平时间线中