From e16b3010d977fb5fb474b91b8c5334e9f7149ab0 Mon Sep 17 00:00:00 2001 From: Zzm0809 <934230207@qq.com> Date: Tue, 14 May 2024 16:26:03 +0800 Subject: [PATCH] [Optimization] Default value judgment for supplementary types (#3475) Signed-off-by: Zzm0809 <934230207@qq.com> Co-authored-by: Zzm0809 --- .../src/main/java/org/dinky/metadata/driver/MySqlDriver.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dinky-metadata/dinky-metadata-mysql/src/main/java/org/dinky/metadata/driver/MySqlDriver.java b/dinky-metadata/dinky-metadata-mysql/src/main/java/org/dinky/metadata/driver/MySqlDriver.java index 2455b2c47d..f668a1519c 100644 --- a/dinky-metadata/dinky-metadata-mysql/src/main/java/org/dinky/metadata/driver/MySqlDriver.java +++ b/dinky-metadata/dinky-metadata-mysql/src/main/java/org/dinky/metadata/driver/MySqlDriver.java @@ -114,7 +114,10 @@ private String genTable(Table table) { final String dv = column.getDefaultValue(); // If it defaults to a numeric type, there is no need to include single quotes or a bit type String defaultValueTag = " DEFAULT '%s'"; - if (NumberUtil.isNumber(dv) || columnType.startsWith("bit")) { + if (NumberUtil.isNumber(dv) + || columnType.startsWith("bit") + || (StrUtil.isNotEmpty(dv) + && dv.toLowerCase().trim().matches("^current_timestamp.*"))) { defaultValueTag = " DEFAULT %s"; } String defaultValue = Asserts.isNotNull(dv)