这个错误通常是由于Hive表的属性设置不正确导致的。如果您想要创建一个外部表,您需要在CREATE TABLE语句中指定EXTERNAL关键字,例如:

CREATE EXTERNAL TABLE my_external_table
(col1 INT, col2 STRING)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
LOCATION '/path/to/table';

如果您想要使用CREATE TABLE AS SELECT语句创建一个外部表,您需要在SELECT子句中指定EXTERNAL关键字,例如:

CREATE EXTERNAL TABLE my_external_table
AS SELECT * FROM my_internal_table;

请注意,如果您已经在Hive中创建了一个内部表,您可以使用ALTER TABLE语句将其转换为外部表,例如:

ALTER TABLE my_internal_table SET TBLPROPERTIES('EXTERNAL'='TRUE');

至于您提到的第二个建表语句没有报错,可能是因为它在不同的环境或配置下运行,或者它创建的是内部表而不是外部表

SemanticException Error 10070 CREATE-TABLE-AS-SELECT cannot create external table是什么原因造成的那为什么我这样子建立另一个却没有报错

原文地址: https://www.cveoy.top/t/topic/fUyu 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录