软件开发GBase 8t

gbase 8t建表语句时间字段的问题?

有谁知道8t像下面mysql建表语句一样建时间:
create_time datetime DEFAULT NULL COMMENT '创建时间',
update_time datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间'

我的8t语句:
create_time DATETIME YEAR TO fraction(3) NOT NULL DEFAULT current,
update_time DATETIME YEAR TO fraction(3) NOT NULL DEFAULT current
update_time不能自动更新成最新时间,有谁知道怎么设置吗?

参与9

1同行回答

GBase_DavidGBase_DavidDBAGBase
gbase中 只支持insert的时间,不支持update的的时候取当前时间。8t是这么去理解默认时间的:1、如果在insert记录的时候,如果字段设置了default current且insert的时候又没有给该列赋值,则数据库取默认值current;此时的current和insert理解成一个值即可。2、在update的时候,数据...显示全部

gbase中 只支持insert的时间,不支持update的的时候取当前时间。
8t是这么去理解默认时间的:
1、如果在insert记录的时候,如果字段设置了default current且insert的时候又没有给该列赋值,则数据库取默认值current;此时的current和insert理解成一个值即可。
2、在update的时候,数据库发现default current列已经有值了,自然不会去更新;

如果非想使用current来记录更新,用法如下:
update tt set id=3,col1=current

收起
IT其它 · 2019-04-03
浏览5015

提问者

zhaojunyong
软件开发工程师暂无
擅长领域: GBase 8t数据库

相关问题

问题状态

  • 发布时间:2019-04-03
  • 关注会员:2 人
  • 问题浏览:5263
  • 最近回答:2019-04-03
  • X社区推广