天天看點

vertica-修改表結構(涉及vertica底層的操作)

vertica這一mpp型資料庫還是有很多不同的地方,vertica的表就相當于一個’視圖‘一樣并不存儲資料,資料都在其對應的projection中,由于這些projection事記錄在vertica系統資訊裡面的,記錄在vertica系統資訊裡面的東西修改很困難,是以涉及此類問題我們一般都不得不重建表。 這裡要提到若是表的某個字段未寫入系統資訊得情況,例如若某個字段沒有在projection中hash by的話,我們是可以直接對他進行一些修改操作的,具體資訊可以檢視vertica官網。 CREATE TABLE PC.PCSTARTINFO_tmp ( EUTIME Timestamp  default sysdate , EID int DEFAULT nextval('pc.PCStartInfo_seq'), LogDate Timestamp   , LogStartTime Timestamp   , UserIP varchar(100)  , UserInIP varchar(500)  , InstallID varchar(100)  , MacID varchar(500)  , LoginType Numeric(37)  , SoftVersion varchar(100)  , UserScr varchar(100)  , OS varchar(100)  , OSVersion varchar(100)  ,  OSDigit varchar(100)  , OSLanguage varchar(100)  , CPUName varchar(500)  , Memory varchar(100)  , ChannelName varchar(100)  , IsGreyUser Numeric(37)  , WebvisitorID varchar(500)  , OtherSoft varchar(500)  , SDKVersion varchar(100)  , Soft Numeric(37)  , FilePath varchar(100) ); insert  into PC.PCSTARTINFO_tmp select * from PC.PCSTARTINFO;

drop table PC.PCSTARTINFO;

alter table PC.PCSTARTINFO_tmp rename to   PCSTARTINFO;

再添權重限