分布式LSC表修改字段
概述
分布式中LSC表不支持修改字段,本文通过间接的方案快速实现LSC表字段的修改。
LSC表修改列方案
假如原表如下,将字段area_name长度由VARCHAR2(60)修改为VARCHAR2(100)
CREATE TABLE area
(area_no CHAR(2) NOT NULL PRIMARY KEY,
area_name VARCHAR2(60),
DHQ VARCHAR2(20) DEFAULT 'ShenZhen' NOT NULL);
修改步骤如下
-- 注:以下SQL需在yasql命令行下执行
-- step1:将原表备份 ALTER TABLE area RENAME TO area_bak;
-- step2:统计备份表记录数 SELECT COUNT(*) FROM area_bak;
-- step3:重建表,将字段area_name长度由VARCHAR2(60)修改为VARCHAR2(100) CREATE TABLE area (area_no CHAR(2) NOT NULL PRIMARY KEY, area_name VARCHAR2(100), DHQ VARCHAR2(20) DEFAULT 'ShenZhen' NOT NULL);
-- step4:将备份表数据通过bulkload冷数据方式快速导入新表 SET AUTOCOMMIT OFF; INSERT /*+ bulkload */ INTO area select * from area_bak; COMMIT;
-- step5:统计新记录数 SELECT COUNT(*) FROM area;
-- step6:确保新表记录数没问题,删除备份表 DROP TABLE area_bak; |
友情链接:深圳计算科学研究院 深圳崖山科技有限公司
版权所有© 深圳崖山科技有限公司 粤ICP备2022018810号
公众号
加入技术交流群
YashanDB
崖山数据库系统YashanDB是深圳计算科学研究院自主设计研发的新型数据库管理系统,融入原创的有界计算、近似计算、并行可扩展和跨模融合计算理论,可满足金融、政企、能源等关键行业对高性能、高并发及高安全性的要求。
邮箱:info@yashandb.com
地址:广东省深圳市龙华区民宝路红山6979园区25座5-10层