注册

Mysql迁移,非空时间戳自动填充失败

枫🇾 🇸 🇺 2023/09/04 549 0

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:8
【操作系统】:CentOS7
【CPU】:
【问题描述】*: Mysql中的非空时间戳字段 create_time,迁移到过来后如果insert 显式指定为null 会出错,在Mysql中会自动填充当前时间戳
Mysql脚本:

CREATE TABLE `t_test` ( `id` int(11) NOT NULL, `name` varchar(255) NOT NULL DEFAULT 'test', `create_time` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' PRIMARY KEY (`id`) ) ; INSERT INTO `t_test`(`id`, `name`, create_time) VALUES (1, 'xx', null);

DM脚本:

CREATE TABLE "SYSDBA"."T_TEST" ( "ID" INT NOT NULL, "NAME" VARCHAR(255) DEFAULT 'test' NOT NULL, "CREATE_TIME" TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP() NOT NULL, NOT CLUSTER PRIMARY KEY("ID") ) STORAGE(ON "MAIN", CLUSTERBTR) ; -- 出现非空约束的异常 INSERT INTO "T_TEST"(id, name, create_time) VALUES (1, 'xx', null);

我看建表的语法中有这个写法
DEFAULT [ON NULL] <列缺省值表达式> <列级约束定义>
但我实际使用的时候却在ON处提示语法错误:

"CREATE_TIME" TIMESTAMP(0) DEFAULT ON NULL CURRENT_TIMESTAMP() NOT NULL

请问如何适配?

回答 0
暂无回答
扫一扫
联系客服