Генерация последовательности PySpark Oracle с использованием JDBC.Read - PullRequest
0 голосов
/ 11 октября 2018

Пытался сгенерировать последовательность в Oracle для записей через чтение PySpark JDBC.

from pyspark.sql import SparkSession
if __name__ == '__main__':
        spark = SparkSession.builder.master("local")\
                            .appName("Seq_num")\
                            .getOrCreate()

        jdbcDF = spark.read \
                    .format("jdbc") \
                    .option("url", "URL") \
                    .option("dbtable", "(SELECT SEQ.NEXTVAL FROM DUAL) qry") \
                    .option("user", "USER") \
                    .option("password", "PWD") \
                    .load()

        jdbcDF.show(2)

Это дает мне ошибку

py4j.protocol.Py4JJavaError: An error occurred while calling o50.load.
: java.sql.SQLSyntaxErrorException: ORA-02287: sequence number not allowed here

В качестве альтернативы можно было использовать вышеприведенный прогон с использованием cur.execute(query), который предоставил бы мне кортежи.Есть ли другой способ достичь вышеуказанного, чтобы я мог сэкономить время при преобразовании кортежей в Dataframe.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...