Oracle中修改“时间”字段类型TIMESTAMP和VARCHAR转换

遇到过很多次啦,简单做个笔记

字段值为空时:
alter table tb modify (create_date VARCHAR2(200));

字段不为空时:
timestamp → varchar
修改原字段名 create_date 为 make_date
alter table tb rename column create_date to make_date;
增加一个和原字段名同名的字段create_date
alter table tb add create_date VARCHAR2(200);
将原字段make_date数据更新到增加的字段create_date
update tb set create_date=trim(make_date);
更新完,删除原字段make_date
alter table tb drop column create_date;

timestamp → varchar
alter table tb rename column make_date to create_date ;

alter table tb add make_date TIMESTAMP(6);
comment on column table.make_date is’创建时间’;

update tb set create_date= TO_TIMESTAMP_TZ(create_Date, ‘YYYY-MM-DD HH24:MI:SS.FF TZH:TZM’)

alter table tb drop column create_date;

备注:
        两个时间的类型需一致!!!
              TO_TIMESTAMP_TZ(‘2009-3-9 17:51:23.23 -05:00’, ‘YYYY-MM-D HH24:MI:SS.FF TZH:TZM’)
              TO_DATE(yourdate,‘YYYY-MM-D HH24:MI:SS’);
              T0_CHAR(yourdate,‘YYYY-MM-D HH24:MI:SS’);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值