我已将表声明为:
"CREATE TABLE IF NOT EXISTS Employee
(primaryKey String, Firstname String, lastName String)" + " ROW FORMAT DELIMITED"
+ " FIELDS TERMINATED BY '\\t'"<br/>
+ " LINES TERMINATED BY '\\n'"<br/>
+ " STORED AS TEXTFILE"
表employee有3列。如果插入了第四个值,即address,我想修改这个表。我正在插入基于另一个表的值。下面是我的查询。
"INSERT INTO TABLE Employee select primaryKey,Firstname,lastName from oldEmpTable"
此查询正在运行。如果运行以下查询,则配置单元不会抱怨,表中也不会有任何更改。顺便说一下,我用的是Spark。
"INSERT INTO TABLE Employee select primaryKey,Firstname,lastName,address from oldEmpTable"
有没有办法根据insert修改表?
1条答案
按热度按时间1tu0hz3e1#
表架构是用
CREATE TABLE
命令。使用INSERT INTO
使用附加字段将不会更改架构。您应该重新创建表,或者使用ALTER TABLE
为了更改模式,在执行INSERT
额外的字段。