phoenix 修改表字段

主要记录下apache phoenix 修改表字段的一种变通方式,仅供参考

 

 CREATE TABLE IF NOT EXISTS t_appversion (
  f_region_id VARCHAR,
  f_province_id VARCHAR,
  f_province_name VARCHAR,
  f_terminal INTEGER ,
  f_phone_model VARCHAR,
  f_app_version VARCHAR,
  f_hard_version VARCHAR,
  f_ca_id VARCHAR
     constraint pk primary key(f_ca_id)
 );  

例如 t_appversion 表中f_terminal字段要修改varchar类型,我们可以通过备份t_appversion 数据,然后创建一个结构类似的表

 CREATE TABLE IF NOT EXISTS test_appversion (
  f_region_id VARCHAR,
  f_province_id VARCHAR,
  f_province_name VARCHAR,
  f_terminal VARCHAR,
  f_phone_model VARCHAR,
  f_app_version VARCHAR,
  f_hard_version VARCHAR,
  f_ca_id VARCHAR
     constraint pk primary key(f_ca_id)
 );  

然后进行数据迁移主要使用了UPSERT SELECT 语法,数据迁移到临时表中

历史数据迁移到临时表中
UPSERT into test_appversion  select * from  t_appversion  

删除目标表  t_appversion,
drop table   t_appversion;

 

删除目标表  t_appversion,再从创建  t_appversion,结构和临时表(test_appversion)相同.

再次数据迁移,将临时表中的数据迁移到目标表中t_appversion,

历史数据迁移到临时表中
UPSERT into  t_appversion   select * from  test_appversion  

删除临时  test_appversion  ,
drop table   test_appversion  ;

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值