您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“Hive如何更改表的屬性”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Hive如何更改表的屬性”這篇文章吧。
1、修改表名
alter table table_name rename to new_table_name;
例1:alter table ruoze_emp rename to emp;
2、修改列名
alter table tablename change column column_orign column_new int(修改后列的屬性) comment 'column_name'
after severity;//可以把該列放到指定列的后面,或者使用‘first’放到第一位
將表tablename中的列column_orign修改成column_new,同時指定修改后的列名稱的屬性,comment是這個列的注釋
例1:alter table emp change column age uage double comment 'column age' after id;
3、增加列
alter table tablename add columns(column1 string comment 'xxxx',column2 long comment 'yyyy')
例1:alter table emp add columns(age int);
4、替換表
ALTER TABLE table_name [PARTITION partition_spec] ADD|REPLACE COLUMNS (col_name data_type [COMMENT col_comment], ...) [CASCADE|RESTRICT] -- (Note: Hive 1.1.0 and later)
例1:ALTER TABLE emp REPLACE COLUMNS (age int, uage int);
5、查看表的屬性
desc formatted tablename;
6、修改表的屬性
(1)alter table table_name set tblproperties('property_name'='new_value');
將table_name表中的comment屬性值修改成'new_value';
(2)alter table emp set serdeproperties ("field.delim"="\t");
將表table_name中的字段分割符修改成'\t',注意,這是在表沒有分區的情況下
例1:create table emp(id int,uname string)row format delimited fields terminated by '#' lines terminated by '\n' stored as textfile;
alter table emp set serdeproperties('field.delim'='\t');這條語句將t8表中的字段分隔符'#'修改成'\t';
例2:create table emp(id int,uname string) partitioned by(dt=string) row foramt delimited fields terminated by '\n' stored as textfile;
alter table emp partition(dt='20180108') set serdeproperties('field.delim=\t');
(3)alter table table_name[partition] set location 'path'
alter table emp set TBLPROPERTIES('EXTERNAL'='TRUE');//內部表轉化成外部表
alter table emp set TBLPROPERTIES('EXTERNAL'='FALSE');//外部表轉成內部表
注意:由于emp默認是內表,所以在刪除表emp時,它的數據包括文件目錄全部被刪除,為了防止這種情況發生,可以將表emp修改成外表,
通過語句:alter table emp set tblproperties('EXTERNAL'='TRUE');同樣也可以將外部表修改為內部表,
可以通過語句:alter table city set tblproperties('EXTERNAL'='FALSE');
(4)其他修改表屬性的命令:
alter table properties; alter serde properties;
alter table/partition file format;
alter table storage properties;
alter table rename partition;
alter table set location;
以上是“Hive如何更改表的屬性”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。