建表语句:
create table A (
table_code string,
data_dt string,
update_dt string)
clustered by (table_code) into 1 buckets
row format delimited fields terminated by '\033'
stored as orc -- orc格式
tablproperties('transactional'='true');
执行insert…values操作:
insert into table A values('1','2','3');
出现异常:
FAILED: SemanticException [Error 10265]: This command is not allowed on an ACID table default.a with a non-ACID transaction manager. Failed command: null
原因:
Hive建表语句指定tblproperties(‘transactional’=‘true’),则执行插入操作时,不能直接使用insert…values语句,原因是开启了事务机制。建议使用insert…select方式。