Эта ошибка появляется, поскольку Spark SQL не поддерживает списки столбцов в операторе вставки.поэтому исключите список столбцов из оператора вставки.
ниже была моя таблица кустов:
select * from UDB.emp_details_table;
+---------+-----------+-----------+-------------------+--+
| emp_id | emp_name | emp_dept | emp_joining_date |
+---------+-----------+-----------+-------------------+--+
| 1 | AAA | HR | 2018-12-06 |
| 1 | BBB | HR | 2017-10-26 |
| 2 | XXX | ADMIN | 2018-10-22 |
| 2 | YYY | ADMIN | 2015-10-19 |
| 2 | ZZZ | IT | 2018-05-14 |
| 3 | GGG | HR | 2018-06-30 |
+---------+-----------+-----------+-------------------+--+
здесь я вставляю запись, используя spark sql через pyspark
df = spark.sql("""insert into UDB.emp_details_table values ('6','VVV','IT','2018-12-18')""");
ниже вы можете видеть, что данная запись была вставлена в мою существующую таблицу улья.
+---------+-----------+-----------+-------------------+--+
| emp_id | emp_name | emp_dept | emp_joining_date |
+---------+-----------+-----------+-------------------+--+
| 1 | AAA | HR | 2018-12-06 |
| 1 | BBB | HR | 2017-10-26 |
| 2 | XXX | ADMIN | 2018-10-22 |
| 2 | YYY | ADMIN | 2015-10-19 |
| 2 | ZZZ | IT | 2018-05-14 |
| 3 | GGG | HR | 2018-06-30 |
| 6 | VVV | IT | 2018-12-18 |
+---------+-----------+-----------+-------------------+--+
измените ваш запрос sql spark на:
spark.sql("""insert into ss.tab values ('1','demo','demo')""");
Примечание: я использую spark2.3, вам нужно использовать контекст улья, если вы используете версию spark 1.6.
Дайте мне знать, если она работает.