从mysql v8.0.13开始,可以使用表达式作为字段的默认值:

DEFAULT子句中指定的默认值可以是文字常量或表达式。除一个例外,将表达式默认值括在括号内,以将其与文字常量默认值区分开。

CREATE TABLE t1 (
  -- literal defaults
  i INT         DEFAULT 0,
  c VARCHAR(10) DEFAULT '',
  -- expression defaults
  f FLOAT       DEFAULT (RAND() * RAND()),
  b BINARY(16)  DEFAULT (UUID_TO_BIN(UUID())),
  d DATE        DEFAULT (CURRENT_DATE + INTERVAL 1 YEAR),
  p POINT       DEFAULT (Point(0,0)),
  j JSON        DEFAULT (JSON_ARRAY())
);

唯一的例外是,对于 TIMESTAMP和 DATETIME列,您可以将CURRENT_TIMESTAMP函数指定为默认函数,而不用括号括起来。

ex:
mysql8.0设uuid函数为默认值
变为
mysql8.0设uuid函数为默认值

相关文章:

  • 2022-02-14
  • 2021-06-25
  • 2021-09-30
  • 2021-11-13
  • 2022-12-23
  • 2021-08-26
  • 2021-11-29
  • 2022-01-30
猜你喜欢
  • 2022-12-23
  • 2021-07-07
  • 2022-12-23
  • 2021-09-27
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案